2016-12-30 61 views
0

用戶可以有許多教育,並且教育可以有很多用戶。Rails 5:如何通過連接表訪問屬性

class User < ApplicationRecord 
    has_many :users_eds, dependent: :destroy 
    has_many :educations, through: :users_eds, dependent: :destroy 

class Education < ApplicationRecord 
    has_many :users_eds, dependent: :destroy 
    has_many :users, through: :users_eds 

class UsersEd < ApplicationRecord 
    belongs_to :user 
    belongs_to :education 

在我的用戶列表索引視圖,我想告訴每個用戶的最新education.level,所以我寫:

- @users.each do |user| 
    = user.username 
    = user.educations.last 

然而,這種輸出

#<Education:0x007fec96d2bdf8> 

什麼訪問education.level或其任何屬性的正確語法是什麼?

回答

-1

你幾乎在那裏。您正在返回整個對象,只需要調用該屬性即可。

@users.each do |user| 
     = user.username 
     = user.educations.last.level 
+0

當我寫= user.educations.last.level,我得到的錯誤:未定義的方法'水平'爲零:NilClass –