我的User
表通過user_company
表連接到Company
。現在我想檢索用戶所屬的公司名稱。請你可以建議我應該使用的查詢嗎?用戶關係加入活動記錄查詢
用戶
has_many :companies, :through => :user_companies
公司
has_many :users, :through => :user_companies
用戶不直接屬於公司。
user.company.name
提供了一個錯誤。我想找出用戶所屬的公司名稱。
我的User
表通過user_company
表連接到Company
。現在我想檢索用戶所屬的公司名稱。請你可以建議我應該使用的查詢嗎?用戶關係加入活動記錄查詢
用戶
has_many :companies, :through => :user_companies
公司
has_many :users, :through => :user_companies
用戶不直接屬於公司。
user.company.name
提供了一個錯誤。我想找出用戶所屬的公司名稱。
由於用戶有多個公司,因此是user.companies
。要獲得名字,你可以做例如user.companies.map(&:name)
@user.companies
將爲您提供用戶所關聯的所有公司的陣列。
現在,您可以簡單地遍歷數組並獲取每個公司的公司名稱。
company_names = []
@user.companies.each {|entry| company_names << entry.name}
這是當你沒有在user_companies
表中的公司名稱屬性。
如果你有這樣的說法,你可以簡單地通過
UserCompany.where(:select=>"name", :user_id=> @user)
嘿,感謝讓所有的名字。你解決了我的問題。 – Metal