Pokaż nazwę zamiast ID w tabeli widoku has_many
Próbowałem kilka innych podobnych postów, ale wciąż pojawia się błąd.
W modelu Posty mam pole category_id. Mam następujące modele:
#Posts model
belongs_to :categories
#Category model
has_many :posts
W kontrolerze indeksu Postów mam:
@categories = @posts.Category.find(:all, :order => 'categoryname')
W widoku mam:
<% @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 %>
W drugiej kolumnie próbuję pokazać nazwę kategorii („nazwa kategorii”) z tabeli Kategoria zamiast id_kategorii z tabeli wpisów. Dostaję błąd:
niezdefiniowana metoda `Category 'dla #ActiveRecord :: Relacja: 0x3e1a9b0>
Próbowałem też:
<td><%= post.categories.categoryname %></td>
Ale popełnij ten sam błąd.
Jak również:
<td><%= post.category.categoryname %></td>
Wszelkie sugestie byłyby bardzo mile widziane.