나는 모든 사용자의 프로필과 관련 사진을 보여주고 싶은 인덱스 페이지가 있습니다. 나는 사진을 위해 플러그인 Paperclip을 사용하고있다. 프로파일 컨트롤러에서 인스턴스 변수 @profile을 가졌지 만 프로필 테이블에만 테이블을 표시하고 사진 테이블은 표시하지 않습니다. Ruby on Rails : 두 테이블을 결합하는 방법
@profile = Profile.find(:all, :include => :photos,
:joins => "INNER JOIN photos ON photos.profile_id = profiles.id")
모델
은 다음과 같습니다class Profile < ActiveRecord::Base
has_many :photos
end
class Photo < ActiveRecord::Base
belongs_to :profile
end
내가보기에 표시 할 수 있도록하려는 것은 같은 :
- 존의 프로필 (예를 들어, 이름, 나이, 섹스) - 존의 사진 (예 : 한 장의 사진 만 표시)
- 메리의 프로필은 여기에 - 메리의 사진은 여기에 표시
- Bob 님의 프로필 - Bob 님의 사진이 여기에 표시됩니다.
(뷰)
, 어떻게 결정합니까 (모델)에
특정 프로필에 대해 표시 할 사진은 무엇입니까? 이것이 일대일 관계인가? (예를 들어 프로필에 profile_photo에 대한 외래 키가 있거나 특정 사진이 "기본"으로 표시 될지 여부를 나타내는 사진에 부울 열이있을 수 있습니다.) –
예, 부울이라는 기본 열이 있습니다. 1로 설정하면 사진이 표시됩니다. – Max