[英]Ruby on Rails - Show field from has_many table
我有两个桌子:轮船和航程。 一艘船可以有很多航程,但是一艘船只能有一艘船。
在RoR中,ship模型具有has_many:voyages,而Voyage模型则设置为belongs_to:ship
我可以使用类似于以下的代码在视图中显示ship表中的所有字段,而不会出现任何问题:
<%= @ship_data.id %>
我现在试图在视图中显示航程表中的一条信息。
如果我做:
<%= @ship_data.voyages %>
我能够拉出ActiveRecord条目,即:
#<Voyage::ActiveRecord_Associations_CollectionProxy:0x00000006639a10>
如果附加.to_json,则可以提取所有数据的json文件。
我将如何在视图中显示特定字段,我尝试过的事情包括:
<%= @ship_data.voyages.id %>
和
<%= @ship_data.voyages, :id %>
但是两者都错了我。 注意:虽然这种关系是一艘船可以进行多次航行,但目前每艘船只有一次航行。
我会承认自己是RoR的新手!
@ship_data.voyages
是一个ActiveRecord 关系 。 这就像一系列物品。 您可以获取每个项目的ID数组:
<%= @ship_data.voyages.pluck(:id) %>
或遍历数组:
<% @ship_data.voyages.each do |voyage| %>
<%= voyage.id %>
<% end %>
或仅获得first
航行:
<%= @ship_data.voyages.first.id %>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.