2015-03-11 3 views
1

В настоящее время я пытаюсь получить только последнее сообщение в своем индексном представлении, которое помечено как «признакам».Последнее сообщение

В мой контроллер у меня есть

@featured = Post.featured 

В моей модели 'Post' У меня есть

scope :featured, -> { where(:featured => true) } 

И на мой взгляд, у меня есть

<% @featured.each do |post| %> 
    <%= post.title %> 
    <% end %> 

То, что я пытаюсь do буквально просто получает первое сообщение, которое помечено как признанное.

Любая помощь с благодарностью, спасибо заранее!

ответ

2

Попробуйте это в вашем контроллере:

@featured = Post.featured.order("created_at").last 

Примечание: если вы только хранить один признакам пост в @featured переменной экземпляра, то вы можете изменить вид кода на это:

<%= @featured.title %> 

Нет необходимости перебирать один элемент с каждым методом.

+0

Должен ли я удалить каждый цикл в представлении? – Jonathan

+0

Вам не обязательно, но на самом деле нет необходимости перебирать одну запись. –

+0

С этой ножницей я получаю ту же ошибку? undefined method 'each 'for # Jonathan

Смежные вопросы