개체를 정의하는 PHP에서 응용 프로그램을 ROR로 마이그레이션하고 있습니다. 응용 프로그램의 등록 사용자이거나 익명 사용자 인 사용자가 만들 수있는 문서라고합시다. 누가 자신의 이메일 주소 (이 경우에는 연관된 사용자 계정없이) 만 제공합니다. 방문자가 사용자 계정을 만들 필요는 없지만 문서를 만들 수 있어야합니다.Ruby의 임의 belongs_to 관계
내 모델에서는 먼저 belongs_to 연관을 사용하여 사용자를 참조하는 문서 모델을 만들었습니다. 그러나 이것이 항상 그런 것은 아닙니다. 순수한 SQL과 PHP에서는 어려운 일이 아니지만 문제는 있지만 "purest"Ruby/Rails 방식으로 모델링하고 싶습니다.
방문자가 연결된 사용자가없는 경우 전자 메일 주소는 문서 개체에 직접 저장됩니다.
토론을 시작하려면 다음은 각 모델에 대한 스 니펫입니다.
user.documents
또한 문서가 사용자 또는 경우에 속하는지 확인하기 위해 역 관계를 확인하기 위해 :
# user.rb
class User < ActiveRecord::Base
has_many :documents
end
# document.rb
class Document < ActiveRecord::Base
attr_accessible :title, :description, :email_address
belongs_to :user
end
내 목표는 표준 점 표기법을 사용하여 모든 사용자의 문서를 검색 할 수있다 이메일 주소가 포함되어 있습니다.
if document.user.nil? ...
if document.email_address.nil? ...
has_one 관계를 읽었지만 올바른 경로인지 확인하지 못했습니다.
도움이나 의견을 보내 주시면 감사하겠습니다.
당신은 다소 자신을 대답했습니다. 코드는 사용자의 목적에 맞게 잘 작동해야합니다. –
Jakub에게 감사드립니다. 문제가 발생하면 여기에있는 내용으로 업데이트하겠습니다. –