Symfony1 Symfony-基于外键查找关联项

Symfony1 Symfony-基于外键查找关联项,symfony1,symfony-1.4,Symfony1,Symfony 1.4,我有点挣扎,试图为以下问题找到解决方案: 我有一堆项目,它们只是内容项目,例如标题等 然后,我可以在多对多关系中将标记与这些项目关联 我要做的是根据标签查找所有相关项目 例如: 项目 身份证件 1. 2. 3. 四, 现在,我想做的是,假设我在项目1上,我需要根据项目标记查找所有相关项目 我正在使用Propel,所以我正在寻找一个条件查询 这是一种很好的做事方式吗?我认为类似于此方法(未经测试)的项目应该可行: public function getItemsWithSameTags() {

我有点挣扎,试图为以下问题找到解决方案:

我有一堆项目,它们只是内容项目,例如标题等 然后,我可以在多对多关系中将标记与这些项目关联

我要做的是根据标签查找所有相关项目

例如: 项目 身份证件 1. 2. 3. 四,

现在,我想做的是,假设我在项目1上,我需要根据项目标记查找所有相关项目

我正在使用Propel,所以我正在寻找一个条件查询


这是一种很好的做事方式吗?

我认为类似于此方法(未经测试)的项目应该可行:

public function getItemsWithSameTags()
{
    $tags = $this->getTags();

    $tagIDs = array();
    foreach ($tags as $tag)
    {
        $tagIDs[] = $tag->getId();
    }

    return ItemQuery::create()
        ->useItemTagQuery()
            ->where('ItemTag.TagId IN ?', $tagIDs)
        ->endUse()
        ->find();
}
public function getItemsWithSameTags()
{
    $tags = $this->getTags();

    $tagIDs = array();
    foreach ($tags as $tag)
    {
        $tagIDs[] = $tag->getId();
    }

    return ItemQuery::create()
        ->useItemTagQuery()
            ->where('ItemTag.TagId IN ?', $tagIDs)
        ->endUse()
        ->find();
}