簡體   English   中英

Rails的:has_many通過

[英]Rails :has_many of a :has_one through

我在建立Rails中的模型關系時遇到問題。

我有一個用戶。 一個用戶可以有很多請求。 一個請求可以有一個響應。 我這樣建立模型:

Class User < ActiveRecord::Base
    has_many :user_requests
    has_many :request_responses, through: :user_requests
end

Class UserRequest < ActiveRecord::Base
    belongs_to :user
    has_one :request_response
end

Class RequestResponse < ActiveRecord::Base
    belongs_to :user_request
end

每當我嘗試做類似的事情:

UserRequest.request_response.id

我收到錯誤消息,指出該關系不存在或表中的列不存在。 我的人際關系設置不正確嗎?

您將得到錯誤:

UserRequest.request_response.id

因為:

  1. request_responseUserRequest的類方法。
  2. 關聯定義為request_responses ,而不是request_response ,因此調用user. request_response user. request_response也不起作用。

該怎么辦?

呼叫user.request_response_ids ,其中user = User.first

暫無
暫無

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

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