【问题标题】:Symfony 1.4 overloading "default" table methodSymfony 1.4 重载“默认”表方法
【发布时间】:2014-03-18 05:38:23
【问题描述】:

我有一个名为 Profile 的类,用于存储特定于应用程序的用户信息。这些数据应该是存储在 sf_guard_user_profile 中的,但当时不是这样设计的,现在修改已经太晚了。

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

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

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

是否有一个“默认”的表格方法在没有直接指定表格方法时使用?

我希望这是有道理的。

谢谢!

-史蒂夫

【问题讨论】:

    标签: doctrine symfony-1.4


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-08
      相关资源
      最近更新 更多