У меня есть следующий код в макете:
Posted <%=time_ago_in_words post.created_at %> ago
<% if post.has_tag != nil %>
in the <%= post.get_first_tag.name %> category
<% end %>
И следующий код в модели поста, который наследует форму ActiveRecord :: Base
def has_tag
!self.tags.empty?
end
def get_first_tag
self.tags[0]
end
Теги также наследуютсяиз тегов ActiveRecord :: Base и Post 'has_many'
Во-первых: это лучший способ проверить, имеет ли объект post хотя бы 1 атрибут ассоциированного тега.
Во-вторых: Должен ли я поместитьэта логика в вспомогательный метод?
В-третьих: почему не работает следующее (он возвращает #, где должны быть теги):
in the <%= post.tags.to_sentence %> category,
Я думаю, это потому, что теги на самом деле не сохраняются как атрибут массива, но я действительно не знаю.