두 개의 개체 (File 및 FileDetail)가 있습니다. File은 많은 FileDetails를 가질 수 있지만 FileDetail은 하나의 File 만 가질 수 있습니다. 이 작업을 얻을 수 있지만 키 제약 조건으로 인해 데이터베이스에서 아무 것도 삭제할 수 없습니다 (FileDetail이 FileDetail에 종속되어 있기 때문에 File 행을 삭제할 수 없으며 그 반대의 경우도 마찬가지입니다). 모든 자식 FileDetails이뿐만 아니라 삭제됩니다 내가 파일 행을 삭제할 때일대일 및 일대일 관계에 대한 Doctrine yaml
File:
columns:
id:
type: integer
primary: true
autoincrement: true
...
fileDetail_id: integer
relations:
...
FileDetail:
local: fileDetail_id
foreign: id
cascade: [delete]
FileDetail:
columns:
id:
type: integer
primary: true
autoincrement: true
file_id: integer
...
relations:
...
File:
local: file_id
foreign: id
foreignAlias: Revisions
cascade: [delete]
가 이상적으로 제가 일이하고 싶은 것은 : 나는 다음과 같은 YAML 있습니다. 난 그냥 수동으로 모든 FileDetail 행과 다음 파일 행을 삭제할 수 있다면 그것도 좋은 것, 그러나 때문에 키 제약의 내가 드릴 수 없습니다 :
1451 - Cannot delete or update a parent row: a foreign key constraint fails (`file`, CONSTRAINT `file_filedetail_id_file_detail_id` FOREIGN KEY (`filedetail_id`) REFERENCES `file_detail` (`id`))
가 어떻게 작동하는 관계의 유형을 얻을 것 (한 쪽은 일대일이지만 다른 한 쪽은 일대일). 아니면 그냥 양면에서 다 대다로 취급해야합니까?
+1 내가 아는 모든 것을 가르쳐 줬어. 겨우 한시간 만 .. – johnwards