Routing acts_as_commentable form_for submission

Neil Cauldwell
2008-03-17T19:48:31Z

I have a Group model and a NewsItem model, and NewsItems are nested in
Groups.

I''m trying to add acts_as_commentable powered comments to the NewsItem
model, but I haven''t worked out how to handle the submission of new
comments when ''comments'' aren''t a resource in the
URL. I don''t have a
CommentsController or a comments route (I was under the impression that
they aren''t necessary). I do have a
''comments/_form.html.erb'' which I
was going to call from the ''news_items/show.html.erb''.

Should I put a ''@new_comment = Comment.new'' instance variable
in the
news_item_controller.rb ''show'' action (or any other action
that will
receive new comments), and use a form_for helper on the @new_comment in
the view? Because that the method I was expecting to take, but I just
realised I don''t know how to handle ''form_for'' url
for the @new_comment
when the comment is being created within the group_news_item_path, i.e;


<% form_for(@new_comment) do |f| %> # where do I point this?
<%= render :partial => ''comments/form'', :locals => {
:f => f }%>
<% end %>

And I also realised that this approach could create a fair bit of
duplication, if I''m going to maxmise this polymorphic plugin, and
re-use
the comment/_form.html.erb across the ''show'' actions for many
other
models - all my controller actions will need the Comment.new adding to
them. Is there a better way or something I''m missing?