Doctrine 연관에 대한 계단식 연산에 대한 내 이해를 확인하고 싶습니다. 이 질문의 목적을 위해 나는 Customer
과 Insuree
의 두 모델을 가지고 있습니다.Doctrine Cascade Operations 이해하기
- 이 insuree을 지속하고의 연결을 만들 것입니다 고객에게 새로운 insuree 추가 : 나는
Customer
및Insuree
및 설정cascade{"all"}
사이에 많은 관계에 대한 많은 정의하면는,이 뜻을 이해 조인 테이블.
- 컬렉션에서 insuree를 제거하면 고객으로부터 insuree가 분리되어 insuree에서 고객이 분리됩니다.
- 고객을 삭제하면 고객과 관련된 모든 보험이 삭제됩니다.
이 정의는 Customers
에 있습니다. insuree에 새로운 고객을 추가
- 이 고객을 계속 만들 것입니다 : 내가
Insuree
및Customer
및 설정cascade{"all"}
사이의 많은 관계로 많은 역을 정의하면/** * @ORM\ManyToMany(targetEntity="Insuree", inversedBy="customers", cascade={"all"}) * @ORM\JoinTable(name="customer_insuree", * joinColumns={@ORM\JoinColumn(name="customer_id", referencedColumnName="id")}, * inverseJoinColumns={@ORM\JoinColumn(name="insuree_id", referencedColumnName="id")} *) */ protected $insurees;
는,이 뜻을 이해 조인 테이블의 연관
- 고객을 컬렉션에서 제거하면 고객이 보험에서 분리되어 보험금을 고객과 분리 할 수 있습니다.
- insuree를 삭제하면 관련된 모든 고객이 삭제됩니다.
이것은 Insurees
에있는 연결의 정의입니다.
/**
* @ORM\ManyToMany(targetEntity="Customer", mappedBy="insurees", cascade={"all"})
*/
protected $customers;
그때 병합 및 분리에 계단식으로 유지하는 등의 관계를 정의하는 경우 - insuree가 연관된 모든 고객은 삭제되지 않습니다 삭제 - 그것은 단지 insuree와 고객 사이의 연결을 제거하는 것?
/**
* @ORM\ManyToMany(targetEntity="Customer", mappedBy="insurees", cascade={"persist", "merge", "detach"})
*/
protected $customers;
'고객'과 'Insure'를 만들고 레코드 삭제/추가를 시작하여 계단식 관계에 대한 이해가 올바른지 확인할 수 없습니까? – undefined