내 시나리오에서는 주문에 동일한 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 |
하지만 예상된 오류가 발생했습니다
으아악으아악컨트롤러 주문
으아악제품 마이그레이션 주문
내 문제를 해결하는 방법에 대한 아이디어가 있나요?
이를 여러 관계에 속하지 않고 처리해야 하며 중간 모델 또는 피벗 모델을 만들어야 합니다.
으아아아그리고 주문 및 제품 모델을 변경해야 합니다(사용하지 않을 경우 제품 모델은 선택사항입니다)
으아아아컨트롤러 업데이트 방법
// 요청 구조가
라고 가정합니다. 으아아아자신만의 동기화 방법을 만들어야 합니다
으아아아이 정보가 도움이 되기를 바라며 오류를 방지하고 그에 따라 유효성 검사를 추가하기 위해 트랜잭션을 사용하는 것이 좋습니다