일반적인 HABTM 관계가있는 cakephp에 양식을 만듭니다. 쿠폰 코드로 주문 양식을 개발한다고 가정 해 보겠습니다. 논리적 인 관점에서 볼 때 쿠폰 코드에 텍스트 입력을 허용해야하므로 들어오는 데이터는 적절한 기본 키가 아니라 다른 필드가됩니다.cakephp habtm 선택 상자가 아닌 입력이있는 관계?
그런 다음 해당 데이터의 유효성을 검사하고 올바른 기본 키 ID를 검색 한 다음 orders_coupons 테이블을 해당 coupon_id 및 order_id로 업데이트해야합니다.
선택 상자를 사용할 때 값은 항상 적절한 coupon_id이지만 논리를 처리 할 적절한 위치는 어디에 있습니까? beforeSave를 사용하여 데이터를 수정해야합니까?
는, 사용자는 쿠폰 코드에 텍스트 상자 (No (아니오)를 선택 입력 쿠폰 코드 선택). 수동으로 코드를 입력 할 때 모델은 HABTM 관계에 들어오는 ID가 아님을 알아야하기 때문에 입력 된 쿠폰 코드를 조회하고 실제 기본 키를 결정한 다음 *에 *를 저장해야합니다 habtm 테이블. – helion3
오른쪽. 따라서 setCouponCode (code)와 같은 모델에서 메소드를 작성하면 인간이 읽을 수있는 쿠폰 코드 (항상 인간이 coupon_id를 어떻게 알 수 있습니까?)를 전달했다고 가정하고이를 사용하여 실제 coupon_id를 찾습니다. HABTM에 저장하십시오. – mlathe