가입하세요. 예를 들어, 하나의 주소에 3 개의 서비스 레코드가있는 경우 각 서비스 레코드의 주소 필드를 반복하면서 각 서비스 레코드의 플랜트 정보를 포함하는 3 개의 결과를 얻고 싶습니다.레일 LEFT은 검색 및 JSON 나는 다음과 같은 모델을 가지고
지금까지 내 쿼리과 같이 찾고 있습니다 (레일을 사용하여 5) :
(내 위의 예에서 즉 3) 나에게 반복 주소 결과의 정확한 수를 반환Address.left_joins(service_records: :plant)
.
내가 알아 내려고하는 다음 단계는 결과 쿼리를 각 주소와 각 고유 서비스 레코드가 포함 된 JSON 구조로 반환하는 것입니다. 이 같은 무언가 : 당신이 발견하는 경우
[
{
id: 1,
address: "1234 Street Rd",
service_record: {
id: 1
plant: {
id: 1
}
}
},
{
id: 1,
address: "1234 Street Rd",
service_record: {
id: 2
plant: {
id: 2
}
}
},
{
id: 1,
address: "1234 Street Rd",
service_record: {
id: 3
plant: {
id: 3
}
}
}
]
, 나는 내 주소 모델에 attr_accessor :service_record
을 수행하지만 나는 그게 내가 필요한 것을 얻을 수있는 올바른 방법입니다 확실하지 않다. 제가 찾고있는 것을 얻기위한 어떤 도움이나 대안적인 접근은 많은 도움이 될 것입니다!
'service_record'을 주소 모델의 "공식적인"속성이 아닙니다. 나는'service_records'에만 접근 할 수 있는데, 그 이유는 이것이 모델들 사이의 연관이기 때문입니다. –
왜 service_record attr_accessor를 설정 했습니까? – Jeremie
가능한 아이디어로 추가했습니다. 현재 아무 데서도 설정하지 않습니다. 쿼리 중에 주소에 조인되는 'service_record'와 동일한 값을 설정하는 방법이 있으면 좋겠지 만 그렇게 불가능한 것처럼 보입니다. –