Я создаю блог с помощью RoR. У меня есть страница index.html.erb для сообщений, показывающих все сообщения. Он отображает все сообщения и весь их контент. Я хотел бы ограничить содержание, которое отображается определенному количеству символов, а затем добавить ссылку "читать дальше", чтобы перейти на страницу показа этого отдельного сообщения в блоге. Любая помощь в том, как это сделать? Спасибо.
Создание блога в рельсах - как ограничить текст и добавить ссылку "читать дальше", чтобы показать остальную часть сообщения?
Ответ 1
Чтобы показать определенное количество символов, вы можете использовать truncate вспомогательный метод, чтобы урезать вашу статью.
truncate("Once upon a time in a world far far away")
# => "Once upon a time in a world..."
Если у вас также есть вопрос о ссылке "читать дальше", прочитайте раздел "маршрутизация ресурсов" в Rails Routing from Outside In. Вы должны показать все свои сообщения в действии index
(возможно, с разбивкой на страницы) и показать одиночную запись в show
index. Усечь сообщение в представлении index
и показать полный пост в представлении show
.
Ответ 2
<%= truncate post.content, length: 160 %>
<%= link_to 'read more', post %>
См. документацию для truncate: http://api.rubyonrails.org/classes/String.html#method-i-truncate
Ответ 3
Используйте truncate
помощник
truncate(text, :length => 100)
http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#method-i-truncate