从使用不同关系的表中进行选择

时间:2015-05-05 07:39:51

标签: symfony1 propel

我有三个表(对象)。 Foo表具有与表Bar定义的1:N关系。表FooBar用于定义A和B之间的不同N:M关系。

我想选择Foo中与Bar有1:N关系的所有对象和/或使用相同Criteria的N:M关系。到目前为止,我所拥有的是两种不同的标准:

  $c1n = new Criteria();  
  $c1n->addJoin(FooPeer::ID, BarPeer::FOO_ID);

  $cnm = new Criteria();  
  $cnm->addJoin(FooPeer::ID, FooBarPeer::FOO_ID); 

  $objects1N = FooPeer::doSelect($c1n);  
  $objectsNM = FooPeer::doSelect($cnm);  

是否可以将两者都包含在相同的标准中?如果是的话,我怎么能实现呢?

1 个答案:

答案 0 :(得分:1)

您无法直接执行此操作,但请查看这是否适用于您要查找的内容:

find query for many to many relation propel

你应该能够轻松地保持1:N关系。

foreach($query as $result) {
    $result->getBar()->getColumnName();
}