gpt4 book ai didi

php - 安装 SonataMediaBundle 后映射异常

转载 作者:搜寻专家 更新时间:2023-10-31 20:41:02 25 4
gpt4 key购买 nike

我正在尝试设置和使用 SonataMediaBundle 以便在 SonataAdminBundle 中使用。我阅读并遵循了 docs for SMB 中的每一步.当我运行命令时:

php app/console sonata:easy-extends:generate SonataMediaBundle

默认情况下,这会在 app/ 文件夹中创建 Bundle,因此我手动移动到它应该在的 src/ 文件夹中。现在每次我尝试访问我的应用程序时,我都会收到此错误:

MappingException: The class 'Application\Sonata\UserBundle\Entity\User' was not found in the chain configured namespaces Sonata\MediaBundle\Entity

而且我不知道为什么,我到处找引用文献,但什么也没找到。任何人都可以帮助我解决这个问题或给我一个线索吗?

最佳答案

阅读并尝试了几件事后,我发现了错误所在。在我的学说配置中,我有:

orm:
auto_generate_proxy_classes: "%kernel.debug%"
# auto_mapping: true
entity_managers:
default:
mappings:
ApplicationSonataMediaBundle: ~
SonataMediaBundle: ~

通过删除 auto_mapping 子句,我不再在 doctrine 的映射目录中注册 UserBundle。因此它找不到您的用户实体。因此,解决方案是从您的配置中取消注释 auto_mapping: true 并注释 entity_manager.default.mappings 部分,或者在该部分中明确指定您的用户包。所以我选择第一个,我的代码现在如下所示:

orm:
auto_generate_proxy_classes: "%kernel.debug%"
auto_mapping: true
# entity_managers:
# default:
# mappings:
# ApplicationSonataMediaBundle: ~
# SonataMediaBundle: ~

关于php - 安装 SonataMediaBundle 后映射异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21728986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com