Показывать имя вместо идентификатора в таблице представления has_many
Я пробовал пару других похожих сообщений, но все еще получаю сообщение об ошибке.
В модели сообщений у меня есть поле category_id. У меня есть следующие модели:
#Posts model
belongs_to :categories
#Category model
has_many :posts
В контроллере индекса сообщений у меня есть:
@categories = @posts.Category.find(:all, :order => 'categoryname')
В моем виде:
<% @posts.each do |post| %>
<tr>
<td><%= post.category_id %></td>
<td><%= @categories.categoryname %></td>
<td><%= link_to 'View', post %></td>
<td><%= link_to 'Edit', edit_post_path(post) %></td>
</tr>
<% end %>
Во 2-м столбце я пытаюсь показать имя категории ("categoryname") из таблицы Category вместо category_id из таблицы posts. Я получаю сообщение об ошибке:
Неопределенный метод `Category 'для #ActiveRecord :: Отношение: 0x3e1a9b0>
Я тоже пробовал:
<td><%= post.categories.categoryname %></td>
Но получаю ту же ошибку.
Так же как
<td><%= post.category.categoryname %></td>
Любые предложения будут ценны