[RUBY-ON-RAILS] 레일 - 중첩은 활성 레코드에 포함?
RUBY-ON-RAILS레일 - 중첩은 활성 레코드에 포함?
내가 가져 이벤트 목록을 가지고있다. 나는이 사건 각 사용자에 관련된 모든 프로필에 연결된 모든 사용자를 포함하는 것을 시도하고있다. [사용자는 자신의 프로필을 포함하지만 얻는다.
겠습니까 나는이 작업을 수행하는 방법
Event.includes(:users [{profile:}])
워드 프로세서는 명확하지 않는 것 : http://guides.rubyonrails.org/active_record_querying.html
해결법
-
==============================
1.나는 다음 당신을 위해 작동합니다 생각합니다.
나는 다음 당신을 위해 작동합니다 생각합니다.
Event.includes(users: :profile)
당신이 연결을 포함 할 경우 이미 포함되어 협회의 (우리가 C를 호출 할 것이다), 당신은 위의 구문을 사용하십시오 (우리는 B를 호출 것이다). 그러나 레일 가이드의 예에 주어진대로 배열을 사용하십시오 때의 그 또한 B의 협회 인뿐만 아니라 D를 포함하려는 경우.
A.includes(bees: [:cees, :dees])
당신은 (당신이 실제로 필요한 경우) 둥지처럼 포함에 할 수있었습니다. 말은 또한 Z와 연결되어 있는지, 및 C가 E와 F에 연결되어 있는지
A.includes( { bees: [ { cees: [:ees, :effs] }, :dees] }, :zees)
그리고 좋은 재미를 위해, 우리는 또한 E는 J와 X에 관련되어, 그 D가 Y로 연결되어 있는지 말할 것이다
A.includes( { bees: [ { cees: [ { ees: [:jays, :exes] }, :effs] }, { dees: :wise } ] }, :zees)
-
==============================
2.사람이 중첩 된 JSON을 생성하기 위해 respond_to 블록을하고있는 경우에, 당신은 뭔가를 할 수 있습니다 :
사람이 중첩 된 JSON을 생성하기 위해 respond_to 블록을하고있는 경우에, 당신은 뭔가를 할 수 있습니다 :
respond_to do |f| f.json do render json: event.to_json(include: {users: {include: :profile} }), status: :ok end end
-
==============================
3.조 케네디의 솔루션을 참조하십시오.
조 케네디의 솔루션을 참조하십시오.
여기에 (미래의 나를 위해)보다 읽기 쉬운 예입니다.
includes( :product, :package, { campaign: [ :external_records, { account: [:external_records] }, { agency: [:external_records] }, :owner, :partner, ] } )
from https://stackoverflow.com/questions/24397640/rails-nested-includes-on-active-records by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 조건 NIL을 NOT 사용하는 경우 레일 (0) | 2020.02.10 |
---|---|
[RUBY-ON-RAILS] 유증 여러 "사용자"모델 (0) | 2020.02.10 |
[RUBY-ON-RAILS] 오류 : 설치 libv8를 오류 빌드 보석 네이티브 확장에 실패 (0) | 2020.02.10 |
[RUBY-ON-RAILS] 어떻게 루비 레일에 이동에 열이 고유 인덱스 그것을해야합니까? (0) | 2020.02.10 |
[RUBY-ON-RAILS] 3.1.0 ActionView :: 템플릿 :: 오류 (application.css가 미리 컴파일되지 않음) 레일 (0) | 2020.02.10 |