2011-10-06 44 views
1

我对Symfony2非常陌生,我试图弄清楚如何以及何时传递依赖关系/应用参数,并且如何将参数插入到实体中变得混乱。Symfony2实体依赖关系/应用参数

这种情况是,我有一个实体将包含上传的文件名字符串,我想通过在app/config中设置的目录位置(上传文件将存储在哪里)的参数。阳明海运。这与http://symfony.com/doc/2.0/cookbook/doctrine/file_uploads.html基本相似,但在app/config.yml中定义了路径,而不是硬编码到实体中。

首先,我认为这可以通过构造函数来完成,但是这对于新对象来说看起来很好,而不是在它们被拉出存储库的时候呢? (因为构造函数没有被调用),所以我不知道你应该如何将依赖关系传递给entites。

任何指导非常赞赏。

回答

0

我认为这个问题应该通过添加listeneronLoad(也许onPersist,不确定)事件来解决。

在实体中添加一个setUploadPath($path)方法,您将与侦听器一起调用。

为了在侦听器中实际具有路径参数,您可以在设置侦听器服务时将其作为构造函数参数传递。

+0

感谢您的回答。虽然这看起来确实很长,但它确实有道理。我会努力让它发挥作用。 –

+0

如果您需要更详细地解释一些部分,随时提问!否则,请考虑将此答案标为正确 – Inoryy