Pregunta

Soy nuevo en el uso de los recursos heredados y quiero usarlo para comentarios anidados polimórficos. Tengo varios objetos que serán commentable (artículos, galerías, etc.) y los comentarios también pueden ser anidado. Estoy usando una combinación de awesome_nested_set (parent_id, LFT, RGT) con mi modelo de comentario a tener commentable polimórfica columnas.

El controlador necesita recibir una petición AJAX (sólo) para el crear acción y llevar a cabo como a continuación:

Publicación / artículos / 12 / comentarios / 34 Crea un comentario con commentable igual a @ article (12) y el padre igual a @comment (34)

/ artículos / 12 / comentarios / 34

Publicación / Galería / 12 / comentarios / 34 crea un comentario con commentable igual a @gallery (12) y el padre iguales a @comment (34)

Estoy un poco atascado en dónde empezar. Es este un caso de uso bueno para recursos heredados?


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 
¿Fue útil?

Solución

comentarios anidados son difíciles. Carriles recursos no proporcionan, de paso, un id a la acción de crear, así que no creo que se pueda correctamente POST a la acción de crear de esta manera. Es posible que necesite para añadir comentarios a las opciones belong_to, para que pueda publicar a / comentarios / 33 / comentarios . No sé si InheritedResources apoyan esto. Si lo hace, la creación de objetos debe ser automática. Puede hacer referencia a cosas como parent_url también.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top