我正在构建一个小型社交网络应用,用户应该能够喜欢其他用户的帖子。这是我的link_to喜欢'一个帖子。
<%= link_to "like", like_post_path(post), method: :post do %>
以下是我收到的错误消息:
未定义的方法`stringify_keys&#39; for&#34; / posts / 5 / like&#34;:String
最初这说posts/6/like
,但是我在控制台中删除了该帖子,现在它说5。
我是铁杆新手,我不知道这意味着什么。如果您需要更多代码,请告诉我们。我想弄清楚问题是什么。
答案 0 :(得分:3)
当您使用link_to
的阻止方式时,第一个值是路径,并且您将值放在块中,其他所有内容都在路径被视为哈希之后,并且rails调用{{1 }} 在上面。在您的情况下,您将'like'作为第一个参数,将rails视为路径,stringify_keys
只是一个没有对的字符串。从此以后出错
无论
like_post_path(post)
或者只使用一个衬垫,而不使用<%= link_to like_post_path(post), method: :post do %>
like
<% end %>
do