我对Symfony的Silex风格有疑问,但是我想任何基于Symfony的CMS至少都会有助于找到答案(不幸的是,由于某种原因而无法加入官方Symfony IRC支持频道)。
简而言之,在Silex的基础上构建了一个自定义CMS,其中包含一个核心模块以及许多其他模块。
有一个媒体库模块,可以处理图像,然后其他模块将其用于图像字段。这是一个来自博客模块的声明示例:
/**
* @var ArrayCollection
*
* @ORM\ManyToMany(
* targetEntity="Example\Blog\Entity\Image",
* fetch="EXTRA_LAZY",
* orphanRemoval=true,
* cascade={"persist", "refresh", "remove"})
* @ORM\JoinTable(name="blog_photo")
* @ORM\OrderBy({"sortOrder" = "ASC"})
*/
protected $photos;
和Image
实体扩展了ImageBase
模块中声明的media library
。
出于各种原因,我需要能够在管理区域中启用/禁用图像排序功能,该功能是与媒体模块一起实现和使用的。就像,如果我编辑一个博客文章,我有一个“照片”部分,其中的标记来自媒体库模块,并且我想为其生成两种不同的变体(一种可以进行排序,而另一种则不能)。
我想我可以在各个模块中添加一些设置,然后检查该设置以知道应该使用哪个标记。 为此,媒体库应该是“知道的”,调用哪个模块,换句话说,我想找到“父模块”,以知道在哪里寻找上述设置。
从HTTP请求到博客文章详细信息页面,我想我可以通过某种方式将其作为参数传递给媒体模块(即使我还不知道如何),有没有一种方法可以找到可以使用的模块居住/用于给定路径?
或者还有其他解决方案可以帮助我找到使用媒体库模块的模块名称吗?非常感谢您的帮助。
注意:我是Symfony新手,不是专家,所以请多多包涵。