Symfony 缓存不适用于关系实体

问题描述 投票:0回答:1

我在 Symfony 中使用了缓存组件并遇到了问题。当我从缓存中检索数据时,未设置具有关系的实体。有谁知道如何解决这个问题吗?

$cache = new FilesystemAdapter();
$categories = $cache->get('indexCategories', function (ItemInterface $item) use ($entityManager): Array {
    $item->expiresAfter(30);
    $categories = $entityManager->getRepository(Category::class)->findAll();
    
    return $categories;
});

第一张图显示了我的目标 - 获取关系中的实体。 Desired Outcome

第二张图显示了我当前的情况,我的关系实体都不存在。 Current Situation

我正在尝试访问类别和子类别之间的一对多关系中的实体。

php symfony caching
1个回答
0
投票

Symfony Cache 使用 php 序列化。

但是,学说集的序列化不可用。

请参阅此处:https://www.doctrine-project.org/projects/doctrine-collections/en/stable/serialization.html

一种方法可能是将 Serialized 接口添加到您的 Category 实体,并实现您自己的序列化和反序列化方法。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.