2 回答

TA貢獻1921條經驗 獲得超9個贊
如果您已經刪除了該對象,則它不再具有 id。
您可能想在仍然可用preRemove的地方使用。id
您甚至可以使用preRemove將 id 存儲在對象的非映射屬性中,然后從對象中獲取該 id postRemove。
function preRemove(LifecycleEventArgs $args) {
$object = $args->getObject();
$object->storeId($object->getId());
}
function postRemove(LifecycleEventArgs $args) {
$object = $args->getObject();
$id = $object->getStoredId();
}

TA貢獻1895條經驗 獲得超3個贊
Symfony 中的服務是單例的。您可以像使用代理一樣使用它們。$objectId在偵聽器中創建一個屬性。然后按照這個:
function preRemove(LifecycleEventArgs $args) {
$object = $args->getEntity();
$this->objectId($object->getId());
}
然后在 postRemove 中:
function postRemove(LifecycleEventArgs $args) {
$id = $this->objectId;
}
- 2 回答
- 0 關注
- 148 瀏覽
添加回答
舉報