簡體   English   中英

Rails has_and_belongs_to_many在2級關聯

[英]Rails has_and_belongs_to_many on 2 level association

這與先前提出的問題有關

我在產品和供應商之間有一個has_and_belongs_to_many。

我認為我使用:

<td><%= product.suppliers.map {|supplier| supplier.NAME }.join(', ') %></td>

為了顯示供應商列表,在我的表格中每行的每行用逗號分隔。

現在,我需要在發票索引視圖上顯示相同的列表。 發票表中的PRODUCT列。 我已經在發票模型上設置了Emirates_to:product。

我在發票索引視圖中嘗試過:

<td><%= invoice.product.suppliers.map {|supplier| product.supplier.NAME }.join(', ') %></td>

但它返回

錯誤未定義的局部變量或方法“產品”

為什么這樣不起作用? 我該如何解決? 提前致謝。

您建立了錯誤的.map ,請嘗試

invoice.product.suppliers.pluck(:NAME).join(', ')

BTW

在視圖中使用邏輯是不好的做法,您應該將邏輯移到模型中,並在視圖中使用類似以下內容的方法:

<%= invoice.suppliers_names %>

什么應該返回# => 'Name_1, Name_2, etc'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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