我在rails 4上的ruby上有一个按钮的问题。似乎每次刷新页面时都会调用update_likes方法,当我只调用它时我单击一个按钮。这是模型上按钮的代码
%p
%b Likes:
= @item.likes
= link_to "Like", :onclick => @item.update_likes
这是从控制器调用它(update_likes)的方法
def update_likes
@item = Item.find(params[:id])
@item.update_likes
end
如果我消除了:onclick => @ item.update_likes当我刷新页面时没有任何反应但是一旦我添加它就会在点击和刷新时调用方法。
有人能看到我的问题吗?
任何建议都会有所帮助!谢谢
答案 0 :(得分:0)
onclick用于触发javascript函数,但是在这里你没有javascript函数,但是只要呈现页面就会触发一个简单的调用,所以你需要像这样更新你的代码
= link_to "Like", :onclick => "some_javascript_function_to_call_update_likes_on_server(#{@item.id})"