Doctrine2:对关联应用过滤器

Posted

技术标签:

【中文标题】Doctrine2:对关联应用过滤器【英文标题】:Doctrine2 : Applying a filter to an association 【发布时间】:2012-07-09 18:09:06 【问题描述】:

例如,如果我有:

class Parent 

/* ... */

/** One to Many association */
protected $children;



class Child

/* .. */
/** many to one association */
protected $parent;

/* name of child column */
protected $name;

现在,假设父母,我想按孩子的名字过滤孩子。如果可能的话,以某种方式使用此过滤器执行 parent.getChildren() 会很好,但这是不可能的。

我希望它可能具有 getChildrenByName() 语法,但这个函数似乎不适合 ORM 类和它的存储库类。有人有什么建议吗?

【问题讨论】:

不会实现 `Parent::getChildren($name = null)´ 为您工作吗?除非您要为数千名儿童补充水分,并且其中只有少数符合标准,否则没有任何理由实施更复杂的方法。 【参考方案1】:

此功能允许您在获取关联时添加条件:

使用关联:过滤集合

Version 3.0 Version 2.7

【讨论】:

以上是关于Doctrine2:对关联应用过滤器的主要内容,如果未能解决你的问题,请参考以下文章

如何将过滤器与 Google App Engine 的 app.yaml 中的 servlet 相关联?

Javaweb——过滤器映射

Oculus Go 文件关联与意图过滤器

symfony 过滤器的附加条件

协同过滤

如何在 Symfony 中添加 Doctrine 过滤器?