有个问题,困扰着我。我正在按照这个“Ruby on Rails”教程来实现一个ajaxified评级系统 http://eighty-b.tumblr.com/post/1569674815/creating-an-ajaxified-star-rating-system-in-rails- 3
Die 作者使用了一种名为“rating_ballot”的自写辅助方法,这对我来说似乎是多余的,因为它会检查是否已经给出评分,否则会形成一个新的评分
current_user.ratings.new
但这实际上或多或少在 ratingcontroller 中完成
使用这个辅助方法,表单看起来像这样
= form_for(rating_ballot, :html => { :class => 'rating_ballot' }) do |f|
但是任何其他形式(例如发布评论)都使用实例变量而不是辅助方法。
我希望 form_for 标签看起来像这样
= form_for(@rating, :html => { :class => 'rating_ballot' }) do |f|
但这仅适用于更新评级,而不是创建新评级。
为什么这个“rating_ballot”如此重要?