Ruby on rails 仅显示post中的一些单词作为预览
我使用的是RubyonRails3.2.1和model@post。问题是,我只想在我的第一个应用程序页面上显示第一段或一些单词,就像预览一样,而不是全部内容。我怎么能做到 索引:Ruby on rails 仅显示post中的一些单词作为预览,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-3.1,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 3.1,我使用的是RubyonRails3.2.1和model@post。问题是,我只想在我的第一个应用程序页面上显示第一段或一些单词,就像预览一样,而不是全部内容。我怎么能做到 索引: <% @posts.each{|posts| %> <h1 class="title"><%= link_to posts.title, posts %></h1> <p class="byline" style="text-
<% @posts.each{|posts| %>
<h1 class="title"><%= link_to posts.title, posts %></h1>
<p class="byline" style="text-align: right; font-weight: bold;">Raksts izveidots: <%= posts.created_at.utc.strftime("%d.%m.%Y") %></p>
<div class="entry">
<p><%= raw posts.content %></p>
</div>
<p class="meta"><a href="#" class="more">Read More</a> <a href="#" class="comments">Comments</a> (33)</p>
<% } %>
也许我不理解这个问题,但如果内容是字符串
posts.content[0,20]
将为您提供前20个字符。或者您可以使用truncate html gem-
它给你第一个字符,不管有多少个字符,并确保所有html标记都正确关闭。你可以尝试和的组合,两者都是标准的ActionView帮助程序。当我想要更多的随机文本样本时,我喜欢摘录:
sanitize(excerpt(post.content,"Some key text",240))
如果您知道要显示第一段或该段的一部分,那么我认为Truncate将是一个很好的选项,如@Edward notes或Sanitize与@ERicM方法的组合,例如:
sanitize(posts.content[0,20]).
.这同样有效:)
这基本上是说“打印单词0到100”您可以使用
Rails 4.2上的
或
前18个字符 我只是认为内容是干净的。这不是一个很好的假设。简单又简单!谢谢!:)
<%= posts.content.split[0..100].join(" ") %>