我是TYPO3的新手,我沒有太多的經驗。我正在處理官方文檔。 TYPO3版本7.6 LTS。TYPO3 IRRE 1:n刪除子記錄不起作用
我創建了1:n關係。幾乎一切正常,子項保存並加載沒有任何問題。不過,我有刪除問題。當我刪除父母實體時,其子女不是刪除,這是一個真正的痛苦。
下面是兩個表我的TCA配置(我已刪除無關列):
tx_myext_domain_model_item
父表:
<?php
$ll = 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xlf:';
return [
'ctrl' => [
'title' => $ll . 'basket.item',
'label' => 'title',
'tstamp' => 'updated_at',
'crdate' => 'created_at',
'cruser_id' => 'user_id'
],
'interface' => [
'showRecordFieldList' => ''
],
'columns' => [
'pid' => [
'label' => $ll . 'pid',
'config' => [
'type' => 'passthrough',
]
],
// ...
'documents' => [
'label' => $ll . 'item.documents',
'config' => [
'readOnly' => 1,
'type' => 'inline',
'foreign_table' => 'tx_myext_domain_model_document',
'foreign_field' => 'item_id',
'behaviour' => [
'enableCascadingDelete' => 1,
]
],
]
]
];
tx_myext_domain_model_document
子表:
<?php
$ll = 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xlf:';
return [
'ctrl' => [
'title' => $ll . 'document',
'label' => 'item_id',
'tstamp' => 'updated_at',
'crdate' => 'created_at',
],
'interface' => [
'showRecordFieldList' => ''
],
'columns' => [
'pid' => [
'label' => $ll . 'pid',
'config' => [
'type' => 'passthrough',
]
],
// ...
'item_id' => [
'label' => $ll . 'item.id',
'config' => [
'type' => 'input',
'size' => '10',
'eval' => 'int',
],
],
],
];
任何人有一個想法我做錯了什麼?
感謝您的幫助。
的事情是,只有通過代碼添加文件的項目。我可以看到來自父表格計數器的「文檔」字段表現正確。我不希望通過管理面板進行編輯。 – Ventus
如果您使用extbase repositorys刪除代碼中的對象,則需要將@cascade remove添加到項目模型中的屬性文檔。 在文檔中描述了她: https://docs.typo3.org/typo3cms/ExtbaseFluidBook/5-Domain/2-implementing-the-domain-model.html – Xippo
是的!謝謝@Xippo!我錯過了@ @ cascade'註釋!我不知道我是如何錯過它的。請用這個建議更新你的問題,我會接受它:) – Ventus