我正在通过尝试为可收藏的纸牌游戏建模来学习 Rails。
我有一个冠军模型和一个稀有模型。我在模型定义中有 has_many/belongs_to ,这在控制台中有效:
c = Champion.find(1)
c.rarity.name
=> "Uncommon"
当我在模板中做同样的事情时,我得到
<%= champion.rarity.name %>
undefined method `name' for nil:NilClass
关于如何让它发挥作用的任何想法?
这是在 Rails 3.2.2 上。
更新:完整的 .erb 代码
<% @champions.each do |champion| %>
<tr>
<td><%= champion.name %></td>
<td><%= champion.rarity.name %></td>
</tr>
<% end %>