>  Q&A  >  본문

모델 ID 대신 피벗 테이블 ID로 동기화

내 시나리오에서는 주문에 동일한 ID를 가진 여러 제품이 있을 수 있고 피벗 ID를 호출하는 제품을 업데이트하고 업데이트하지 않은 다른 제품을 제거하고 싶기 때문에 동기화 방법을 사용하여 피벗 ID로 주문 제품을 업데이트하고 싶습니다. 제품이지만 동기화 구문을 통해 제품의 ID를 허용한다는 것을 알 수 있습니다.

상품을 주문할 때 내 몸과 피벗 테이블의 모습입니다

으아악
id 주문_ID 제품 ID 색상 수량
1 1 1 빨간색 2
2 1 1 블랙 10
3 1 2 블랙 1

주문 상품 업데이트 시

으아악

내가 원하는 테이블의 모습

id 주문_ID 제품 ID 색상 수량
1 1 1 블루 12
3 1 2 블루 5

하지만 예상된 오류가 발생했습니다

으아악

컨트롤러 주문

으아악

제품 마이그레이션 주문

으아악

내 문제를 해결하는 방법에 대한 아이디어가 있나요?

P粉121447292P粉121447292268일 전444

모든 응답(1)나는 대답할 것이다

  • P粉207483087

    P粉2074830872024-02-18 12:10:04

    이를 여러 관계에 속하지 않고 처리해야 하며 중간 모델 또는 피벗 모델을 만들어야 합니다.

    으아아아

    그리고 주문 및 제품 모델을 변경해야 합니다(사용하지 않을 경우 제품 모델은 선택사항입니다)

    으아아아

    컨트롤러 업데이트 방법

    // 요청 구조가

    라고 가정합니다. 으아아아

    자신만의 동기화 방법을 만들어야 합니다

    으아아아

    이 정보가 도움이 되기를 바라며 오류를 방지하고 그에 따라 유효성 검사를 추가하기 위해 트랜잭션을 사용하는 것이 좋습니다

    회신하다
    0
  • 취소회신하다