Symfony 1.4重载"默认"表方法

时间:2014-03-18 05:38:23

标签: doctrine symfony-1.4

我有一个名为Profile的类,它存储有关特定于应用程序的用户的信息。这些数据可能应该存储在sf_guard_user_profile中,但当时并没有这样设计,现在修改为时已晚。

问题是在带有过滤器的管理员生成的模块中,调用Doctrine_Core :: getTable(" profile"),然后对配置文件中的每一行执行sf_guard_user_profile的单独查询。

我正在寻找覆盖"默认"的方法“配置文件”中的表方法,用于向sf_guard_user_profile添加连接。我已经创建了自定义表方法,并且工作正常。但是,我宁愿找到一种在所有情况下强制连接的方法,而不是使用特定的table_method。这将使我不必将表方法添加到整个应用程序中的每个过滤器。

我认为我可以在ProfileTable类中覆盖getInstance()。但是,这没有效果。我也尝试在ProfileTable中覆盖findAll(),这也不起作用。

是否有"默认"表方法没有直接指定时使用的表方法?

我希望这是有道理的。

谢谢!

-Steve

1 个答案:

答案 0 :(得分:0)

您应该尝试覆盖createQuery()表的Profile方法。每当表类进行查询时都会调用此方法,因此这应该可以解决问题。