链接到最后的帖子 - rails

时间:2016-07-10 13:32:33

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

我正在尝试对link_to进行show post次操作。

controller我有:

@post = Post.all

在我看来,我试图将它链接到最后一个帖子:

<%= link_to @post.last do %>
 <%= @post.last.title %>
<% end %>

但它不会把我带到那篇文章的展示页面?

2 个答案:

答案 0 :(得分:5)

Post.all加载所有帖子,但不保证订单。您可能希望使用idcreated_at值来订购帖子列表:

# in your controller
@posts = Post.order(:id)

# in the view:
<%= link_to @posts.last.title, @posts.last %>

或者 - 如果您不需要视图中的其他帖子 - 只需加载最新帖子:

# in the controller:
@latest_post = Post.order(:id).last

# in the view:
<%= link_to @latest_post.title, @latest_post %>

答案 1 :(得分:1)

尝试使用以下代码,

<%= link_to post_path(@post.last) do %>
 <%= @post.last.title %>
<% end %>

如果此代码不起作用,请在终端中找到带有rake routes消息的路线,并将post_path替换为您的路线

希望这会奏效。