更新现有实体
Update existing entity
我正在通过 DAL 检索 Category
实体并更改一些值。
$randomId = 'an-existing-category-id';
$result = $this->categoryRepository->search((new Criteria())->addFilter(new EqualsAnyFilter('id', $ids)), Context::createDefaultContext());
$entity = $result->get($randomId);
$entity->setParentId('new-parent-id');
不是将实体转换为数组并将其传递给 DAL 以 upsert
我想知道是否可以像学说中那样“持久化”完整的实体?
不可能,您只能使用实体存储库的 update
或 upsert
方法更新记录。
但你不需要将整个实体转换为数组,你只需要提供id
和应该更新的字段(不是所有字段)。
我正在通过 DAL 检索 Category
实体并更改一些值。
$randomId = 'an-existing-category-id';
$result = $this->categoryRepository->search((new Criteria())->addFilter(new EqualsAnyFilter('id', $ids)), Context::createDefaultContext());
$entity = $result->get($randomId);
$entity->setParentId('new-parent-id');
不是将实体转换为数组并将其传递给 DAL 以 upsert
我想知道是否可以像学说中那样“持久化”完整的实体?
不可能,您只能使用实体存储库的 update
或 upsert
方法更新记录。
但你不需要将整个实体转换为数组,你只需要提供id
和应该更新的字段(不是所有字段)。