2014-03-03 2 views
0

has_one 관계를 갖고 싶지만 has_one 특성을 가진 모델에 참조 ID 열이 있어야합니다.레일스 has_one ID 문제

User에 일대일 관계가 있어야하는 Guest 모델이 있습니다. 제발 역할을 사용하지 말아주세요. Guest 클래스에는 필자가 필요로하는 더 많은 기능이 있습니다.

그래서 내가 필요한 것은하는 것입니다 :

class Guest < ActiveRecord::Base 
    has_one :user, :dependent => :delete 

나는 Guest 모델 user_id을 갖고 싶어 - 손님 아닌 다른 사용자가 있기 때문에 guest_idUser의 모델을 가지고 아무 의미가 없습니다.

답변

1

우리는 한 두 가지 방법으로 연결 하나에 구현할 수 있습니다,이

class User < ActiveRecord::Base 
    belongs_to :guest, :dependent => :destroy 


class Guest < ActiveRecord::Base 
    has_one :user 
+0

내가이기 때문에 User''의 코드를 만지지 않도록 선호 :

class User < ActiveRecord::Base has_one :guest, :dependent => :destroy class Guest < ActiveRecord::Base belongs_to :user 

도 여기 단락 2.1 참조 게스트와 만 관련이 없습니다. – guyaloni

관련 문제