2012-10-23 51 views
0

我有三個表用戶(包含用戶細節)users_shifts(包含用戶移位映射)和shift(它的id在users_shift表中)。 我在做什麼是分配多個班次給用戶,我想從用戶,users_shift和班表檢索所有數據。 我已經做了以下事情:通過關聯在rails上檢索數據

在用戶模式:

has_many :users_shifts, :dependent => :destroy 

在users_shift型號:

has_one :shift 
belongs_to :user 

在轉型模式

belongs_to :users_shift 

在控制我有:

User.all 

現在我想獲取視圖中的表中的所有數據。 我必須顯示用戶和他的班次。用戶細節將來自用戶表,輪班細節將來自輪班表。 Users_shift用於用戶移動映射。

+0

可我一定要顯示用戶和他的轉變

@user_shifts = @user.users_shifts # by using this you get all users_shifts details for that particular user. @shift = @user_shift.shift # by using this you will get shift for that paricular user_shift 

同樣的方式。用戶細節將來自用戶表,輪班細節將來自輪班表。 Users_shift用於用戶移動映射。 –

+0

我覺得@Dipak說的非常多。如果沒有,請詳細說明您的要求 – Ross

回答

1

嘗試在控制檯首先,你還

@shift.user_shift # for getting details for users_shifts 
@user_shifts.user # for getting details about user 
+0

我能夠接收到該換檔映射,但沒有相應的換檔。每當我使用@ user_shift.shift.start_time它給我這個錯誤「未定義的方法'start_time'爲零:NilClass」 –

+0

@ shift.user_shift試試這個 –

+0

我得到了用戶和移位映射數據,其中1個用戶有多個轉變。但是我仍然沒有得到這個轉變的細節。我沒有得到這個'@ shift.user_shift'能否請你詳細說明。 –

相關問題