猿问

Symfony 4 和 Sonata News Bundle 在安装过程中出现错误

我在安装 SonataNewsBundle 时遇到以下错误。

Unable to register extension "Sonata\FormatterBundle\Extension\ControlFlowExtension" as it is already registered in . (which is being imported from "/home/yoesoff/Documents/projects/oblog/config/routes/sonata_admin.yaml"). Make sure there is a loader supporting the "sonata_admin" type.

并遵循错误

The target-entity App\Entity\SonataMediaMedia cannot be found in 'App\Entity\SonataClassificationCollection#media'.

http://img4.mukewang.com/6145ecfc0001f85309830151.jpg

我只是按照这里的官方文档。

有人可以帮忙吗?


一只甜甜圈
浏览 186回答 1
1回答

繁星淼淼

文档中缺少一个步骤 - 看起来我们需要手动添加一个额外的包来创建缺失的类:composer require sonata-project/media-orm-pack请注意,如果您正在使用sonata-project/classification-bundle,则需要App\Entity\SonataMediaMedia::$category像这样修复注释:/** * ORM\ManyToOne( *     targetEntity="App\Entity\SonataClassificationCategory", *     cascade={"persist"} * ) * ORM\JoinColumn(name="category_id", referencedColumnName="id", onDelete="SET NULL") * * @var SonataClassificationCategory */protected $category;如果有帮助,据我所知,sonata:easy-extends:generate在使用 Symfony 4 / Flex 时我们应该跳过这些步骤。Flex 食谱应该在我们的App\Entity命名空间中创建类。如果他们不这样做,这将是上面需要手动添加的东西。
随时随地看视频慕课网APP
我要回答