2013-08-02 3 views
0

나는 우아하게 해결하려고 애쓰는 문제를 발견했습니다. 나는 RDBMS에 더 정통하므로 일을하고있는 방식이 이상적이지 않을 수도 있습니다.몽고 이드 : 양식으로 연결 콜백을 올바르게 사용하십시오.

내가하고있는 일 : HABTM 연결 내의 항목을 추적해야합니다. 또한 '활성'인 항목 만 계산되기 때문에 개수에 조건이 있습니다. 콜렉션에서 추가 및 제거를 추적하기 위해 연관 콜백을 성공적으로 사용했습니다.

문제점 : 반대쪽 인스턴스의 ID를 양식에 숨겨진 필드로 설정하여 양식을 통해 항목을 추가하고 있습니다. 이 잘 작동하지만 문제는 콜백 (오래된 문제) 호출하지 않고 컬렉션에 바로 반대 인스턴스를 추가하는 것입니다.

내 질문 : 콜백을 호출하는 컬렉션에 인스턴스를 추가하는 좀 더 우아한 방법이 있습니까?

더 구체적인 예가 필요한 경우 알려 주시면 기꺼이 제공해 드리겠습니다.

답변

0

다음 mongoid3 콜백을 사용해 보셨습니까?

  • after_remove
  • after_add

    • 내가 현재 문제를 해결하는 방법은

    더 많은 정보 here

  • +0

    before_remove

  • 을 before_add. 연관 콜백이 호출되었는지 여부를 파악해야하므로 많은 상태 관리를해야하기 때문에 최적이 아닙니다. 모델 콜백을 건너 뛸 수 있습니다. 나는 assoc으로 해결책을 찾고 있었다. 콜백 전용. 나는 이것이 존재하지 않을 수도 있다는 것을 이해하지만 너희들에게 물어 보는 것이 가치 있다고 생각한다. – luxerama