gpt4 book ai didi

symfony1 - 在 symfony 中扩展 sfDoctrineRecord

转载 作者:行者123 更新时间:2023-12-01 09:37:57 25 4
gpt4 key购买 nike

我已经为我的 symfony 项目中的一些实例类添加了一些功能,我希望我的所有实例类都具有这些功能。如果我对编辑核心 symfony 安装没有任何疑虑,我会直接将我的方法添加到 sfDoctrineRecord 类中。但我当然不想这样做,因为我的更改会在升级时中断,而且我的更改不能很好地移植到其他项目。

如果我想在 symfony 中为我的所有实例类添加某些功能,那么“正确”的方法是什么?

(P.S. 当我说“实例类”时,我的意思是像 lib/model/doctrine/Customer.class.php 这样的东西。)

最佳答案

步骤:

  1. 创建我的DoctrineRecord

    abstract class myDoctrineRecord extends sfDoctrineRecord
    {
    public function commonRecordMethod() { }
    }

    我将此文件放在 lib/record 中,但您可以将其放在自动加载器可以看到的任何位置。

  2. 将 Symfony 设置为在 ProjectConfiguration 的 configureDoctrine 回调中使用此类:

     public function configureDoctrine(Doctrine_Manager $manager)
    {
    sfConfig::set('doctrine_model_builder_options', array('baseClassName' => 'myDoctrineRecord'));
    }

就是这样! Symfony 不是很棒吗? :)

关于symfony1 - 在 symfony 中扩展 sfDoctrineRecord,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4391483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com