与前缀的Symfony关系

时间:2011-08-22 22:16:55

标签: symfony1 doctrine symfony-1.4 relation

我正在努力解决从主类/表到symfony 1.4中带有教义的相关类的连接/关系。关系是

$relatedClass->identifier == 'e'.$mainClass->id;

我知道如果没有这个前缀我就能轻松实现它,但是我正在使用现有的数据库和现有的子组件,所以我无法改变这种关系。

有什么想法吗?谢谢!

2 个答案:

答案 0 :(得分:1)

你无法实现这是Doctrine中的关系,因为它不是真正的外键。

如果您无法更改现有列,是否可以创建新列?如果是这样,请编写一个迁移,以使用适当的外键关系向relatedClass表添加列。

答案 1 :(得分:0)

我终于做出了这样一个'伪关系':

$results = Doctrine::getTable($relatedClass)
            ->createQuery('alias')
            ->addWhere('alias.identifier=?','e'.$event->getId())
            ->execute();

它有几个优点:

  • 不需要更改现有表格
  • 没有向已经庞大的数据库添加无用的列

它并不优雅,但它是迄今为止最具优势的解决方案。