undefined方法`stringify_keys' for" / posts / 5 / like":String

时间:2016-09-15 18:57:08

标签: ruby-on-rails ruby

我正在构建一个小型社交网络应用,用户应该能够喜欢其他用户的帖子。这是我的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。

我是铁杆新手,我不知道这意味着什么。如果您需要更多代码,请告诉我们。我想弄清楚问题是什么。

1 个答案:

答案 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