undefined局部变量或方法`path'

时间:2014-01-22 20:25:08

标签: ruby ruby-on-rails-4 blogs

<h2>Hello World</h2>

<% @posts.each do |post| %>
    <h2><%= link_to post.title, @post %></h2>
    <p><%= post.content %></p>
    <hr />

<% end %>

当我这样做时,它会让我查看没有错误的页面,并在我的所有帖子标题上都有超链接,但现在它没有将我重定向到只有我想要的帖子的页面...仍然试图想象这个我猜错了。

2 个答案:

答案 0 :(得分:1)

除非你以某种方式修改了帖子路径:

<%= link_to 'post.title', post_path(post) %>

答案 1 :(得分:1)

应该是

<% @posts.each do |post| %>
    <h2><%= link_to post.title, post %></h2>
    <p><%= post.content %></p>
    <hr />

<% end %>

请注意,我更改了@post -> post,因为在循环内部,您需要获取每个post对象的路径。

那么你就不需要像@post = Post.find(params[:id])那样做了。