8
내가 다음과 같은 클래스를 가지고 말 : 우리가 삭제할 때 Doctrine 2의 ManyToMany 관계에서 엔티티를 일괄 제거하는 방법은 무엇입니까?
class Store
{
/**
* @ManyToMany(targetEntity="PaymentMethod")
*/
protected $paymentMethods;
}
class PaymentMethod
{
}
는
PaymentMethod
(또는 실제로 데이터베이스에서 제거하지 않고 비활성화), 우리는이
paymentMethod
이 모든
Store::$paymentMethods
컬렉션에서 제거됩니다 것을 싶습니다. 지금까지
, 우리는이에 대한 접합 테이블에 원시 SQL 쿼리를 사용하고 :
DELETE FROM StorePaymentMethod WHERE paymentMethodId = ?
는 교리, 바람직하게는 DQL에 있다고 할 수있는 방법이 있나요?
나는 이것을 똑바로 들리게한다. Store 클래스의 목록에서 삭제 된 결제 수단을 삭제 하시겠습니까? DB에서 삭제하면 목록에서 제거되지 않습니다. – jere
많은 사람들이 있다면,'PaymentMethod'에'$ stores' 콜렉션을 빈 콜렉션으로 설정하고 그것을 지속시킬 수 있습니까? 상호 링크가 레코드를 보관하지 않도록 메모리에있는 모든 Store 객체를 무효화해야합니다. 이상적인 세계에서 빈을 수행하기 위해 작성하는 접근 자 메소드는 상호 링크를 제거하는'상점 '을 통과합니다. – Orbling