【发布时间】:2015-06-05 14:23:19
【问题描述】:
我是 Rails 的新手,我想为我的应用程序做一个投票系统,用户可以在其中为我称为“Idee”的帖子投票。用户只能为帖子投票一次,并且只能对帖子进行投票。我为我的帖子定义了一个“喜欢”列,我这样做了:
控制器
def upvote
@idee = Idee.find(params[:id])
@idee.like += 1
redirect_to :back, notice: "Thank you for voting!"
end
路线
get 'upvote' => "idees#upvote"
查看
<%= link_to "up", controller: "idees", action: "upvote", id: @idee %>
但是不行,当我点击“up”链接时,可以看到一句“Thank you for vote!”来自我的控制器,但没有投票。
我该怎么做才能完成这项工作?
【问题讨论】:
-
修改
like的值后需要保存@idee -
哦,是的,我太笨了……谢谢
-
@idee.increment!(:likes) 如果成功则返回 true。
标签: ruby-on-rails voting-system