我想了解如何在索引页面中使用控制器中定义的方法。我正在尝试在我的博客上实现“喜欢”按钮。
后控制器
def like
@post = Post.find(params[:id])
@post.like += 1
@post.save
end
在列出所有帖子的索引中,我尝试了类似的方法。
<% @posts.each do |post| %>
<tr>
<td><%= post.name %></td>
<td><%= post.created_at.strftime("%Y/%m/%d, %I:%M%p") %></td>
<td><%= post.view %></td>
<td><%= link_to 'like', like_post_path %></td>
<td>hate</td>
</tr>
<% end %>
我通过查看代码得到了这个想法,
<%= link_to 'make a new post', new_post_path %>
<%= link_to 'Edit', edit_post_path(post) %>
我认为在索引页面中使用控制器中的方法的方式是
(postController 中的方法)_post_path,但似乎我弄错了。
undefined local variable or method `like_post_path'
我也试过喜欢(帖子)。
我的最终目标是让这个函数成为一个 ajax 函数,所以我希望它是一个像
<% link_to_function 'like', like_post, remote: true %>
在这种情况下,使用“like”方法的正确方法是什么?