Question

Je suis novice en matière d’utilisation des ressources héritées et je souhaite les utiliser pour Commentaires imbriqués polymorphes.J’ai plusieurs objets qui seront commentables (articles, galeries, etc.) et les commentaires peuvent également être imbriqué.J’utilise une combinaison de awesome_nested_set (parent_id, lft, rgt) avec mon modèle de commentaire ayant polymorphe commentable colonnes.

Le contrôleur a besoin de recevoir une requête AJAX (uniquement) pour la création l’action et effectuer comme ci-dessous :

Publier sur /articles/12/commentaires/34 crée un commentaire avec commentable égal à @article (12) et parent égal à @comment (34)

/articles/12/commentaires/34

Publier sur /galerie/12/commentaires/34 crée un commentaire avec commentable égal à @gallery (12) et parent égal à @comment (34)

Je ne sais pas trop par où commencer.S’agit-il d’un bon cas d’utilisation pour ressources héritées ?


class CommentsController < InheritedResources::Base 
  respond_to :js, :only => :create 
  belongs_to :article, :cheat, :gallery, :video, :polymorphic => true 
do 
    belongs_to :comments 
  end 
  def create 
    create! do |format| 
       # How in here do I build a comment so that it handles 
polymorphism? 
       @comment.children.create(:commentable => @article or @cheat or 
@something_generic?) 
    end 
  end 
end 
Était-ce utile?

La solution

Les commentaires imbriqués sont difficiles.Les ressources Rails ne fournissent pas d'identifiant à l'action de création, donc je ne pense pas que vous puissiez correctement POST à ​​l'action de création de cette façon.Vous devrez peut-être ajouter un commentaire aux options d'appartenance_to afin de pouvoir publier sur /commentaires/33/commentaires.Je ne sais pas si InheritedResources prend en charge cela.Si c'est le cas, la création d'objet devrait être automatique.Vous pouvez également référencer des éléments comme parent_url.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top