我正在开发一个现有项目,因此更改表可能不是一个选项,因为数据库是通过遗留系统访问的,而我的新系统是使用Symfony 3.3+和Doctrine 2.5
旧系统记录了对下表结构中某些字段的更改:
表:log_tableAttribute
领域:
我需要访问这些值,例如在
表:产品
领域:
由于日志表用于不同的表和字段,我的想法是通过产品方面的OneToMany关系访问这些日志条目,如下所示:
我不能输入Join Colum的名称,但必须使用静态值:0,product,name - 我不知道这是否可行以及如何配置
/**
* @ORM\OneToMany(targetEntity="AppBundle\Entity\LogTableAttribute")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="%defaultValue: 0%??", referencedColumnName="deleted"),
* @ORM\JoinColumn(name="%defaultValue: product%??", referencedColumnName="table_name"),
* @ORM\JoinColumn(name="%defaultValue: name%??", referencedColumnName="attribute_name"),
* @ORM\JoinColumn(name="id", referencedColumnName="table_primary_key_value")
* })
*/
private $nameLog;
是否有可能直接从Product实体获取这些日志条目而不使用" LogTableAttribute"上的Repository类。并通过我在模板中提供的服务获取日志条目?