부모 (PK)를 삭제할 때 작성해야 할 필요없이 모든 종속 자식 (모든 FK)을 NULL로 설정하도록 전파하는 방법이 있는지 묻습니다. 그러한 코드를 수동으로 작성하십시오.
Doctrine이 직접 처리 할 수 있습니까 ..?
예 :symfony/doctrine에서 외래 키 삭제
/**
* @ORM\OneToMany(targetEntity="Frame", mappedBy="notice")
*
*/
protected $frames;
-*AND*-
/**
* @ORM\ManyToOne(targetEntity="Notice", inversedBy="frames")
* @ORM\JoinColumn(name="notice_id", referencedColumnName="id", nullable=true)
*
*/
protected $notice;
나는 모든 프레임 외래 키 등이 특정 통지를는, 통지 열 설정, 또는 NULL로 설정하지를 갖고 싶어하는 통지을 삭제합니다.
방법이 있습니까? ??
그렇지 않은 경우이 문제를 해결하기위한 최선의 방법은 무엇입니까 ??
하이 그레 구 아르있을 것이다, 즉 빨리 ...
내가 캐스케이드 = "지속"과 지속 = 없음 작업을 "제거"...
가 나는 시도 뭔가 잘못하고 있니? – xeon
당신이 찾고있는 것이 '분리'라고 생각합니다. 관계의 좋은 측면에서 사용해야합니다. – greg0ire
나는 어느 쪽의 학급 (운 없음)에도 그것을 사용하려고 노력했다. ORM \ ManyToOne (targetEntity = "공지", inversedBy = "프레임", 계단식 = { "분리"}) ORM \ JoinColumn (name = "notice_id", referencedColumnName = "id", nullable = true) 다른 클래스에 : 'ORM \ OneToMany (targetEntity = "프레임", mappedBy = "공지", 캐스케이드 = { "분리"})' – xeon