簡體   English   中英

Ruby on Rails-has_many表中的顯示字段

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM