我正在使用 RoR 构建博客。我有一个 index.html.erb 页面用于显示所有帖子的文章。它显示所有帖子及其全部内容。我想将显示的内容限制为一定数量的字符,然后加上“阅读更多”链接,以便转到单个博客文章的显示页面。请问如何实现?谢谢。
我正在使用 RoR 构建博客。我有一个 index.html.erb 页面用于显示所有帖子的文章。它显示所有帖子及其全部内容。我想将显示的内容限制为一定数量的字符,然后加上“阅读更多”链接,以便转到单个博客文章的显示页面。请问如何实现?谢谢。
<%= truncate post.content, length: 160 %>
<%= link_to 'read more', post %>
请参阅truncate的文档:http://api.rubyonrails.org/classes/String.html#method-i-truncate
为了展示特定数量的字符,您可以使用truncate帮助方法对文章进行截断。
truncate("Once upon a time in a world far far away")
# => "Once upon a time in a world..."
如果您还对“阅读更多”链接有疑问,请阅读Rails Routing from the Outside In中的“资源路由”部分。您应该在index
操作中显示所有帖子(可能包含分页),并在show
操作中显示单个帖子。在index
视图中截断帖子,在show
视图中显示完整帖子。truncate
助手truncate(text, :length => 100)
http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#method-i-truncate