2016-06-05 4 views
0

두 테이블이 있다고 가정 해 봅시다 : CarWheel. Car에는 많은 Wheel이 있습니다. Car의 색인 필드는 Owner입니다. 내가 "Foo"가 소유하는 모든 Wheel들에 대한 변화 공급를 원한다면rethinkdb : 자식 테이블에서 부모 인덱스 사용

지금, 내가 부모 Car 변경, 내가 필요로하는 것마다 다음 Wheel 테이블에 Owner 필드를 복제해야 할 것 같습니다 하위 Wheel s에 대해 동일한 업데이트를 수행 할 수 있습니다.

r.table('Wheel').indexCreate("Owner", function(wheel) { 
    return r.table('Car').get(wheel("CarID"))("Owner") 
}); 

을이 "Index functions must be deterministic"을 반환했지만 :

나는 부모 참조 WheelOwner 인덱스 기능을 추가했습니다.

가장 좋은 방법은 무엇입니까?

답변

1

네 말이 맞아. OwnerWheel에 붙여 넣거나 휠을 Car 테이블의 배열에 배치해야합니다 (더 일반적입니다). 변경 피드에는 여러 테이블에 걸쳐있는 조건자를 포함 할 수 없습니다.

+0

응답 해 주셔서 감사합니다. (불행히도 Car 예제는 일러스트레이션 용도로만 사용되었습니다. 실제로 사용하는 경우에는 자식 테이블에 대해 다양한 복잡한 쿼리를 수행합니다. 단일 부모 문서의 모든 배열 – jpillora

관련 문제