【问题标题】:CodeIgniter + Doctrine: CRUD in Controller?CodeIgniter + Doctrine:控制器中的 CRUD?
【发布时间】:2011-04-26 12:14:57
【问题描述】:

我是 MVC、CodeIgniter 和 Doctrine 的新手,所以我的问题可能与此无关。如果是这样,请原谅我。

我一直在阅读 PHPandStuff.com 上的 CodeIgniter + Doctrine 教程。我真的很喜欢我所看到的 Doctrine 并希望将它用于我的项目。但是,既然所有与数据库相关的操作都应该保存在 Model 而不是 Controller 中,那么使用 Doctrine 的 CRUD 操作是否也应该放在 Doctrine Model 中呢?如果是,那怎么办?

提前致谢

【问题讨论】:

    标签: codeigniter doctrine controller crud


    【解决方案1】:

    如果您不想将 DQL 写入控制器(这是一件好事),您可以将单独的函数放入您的模型中,这些函数仅适用于扩展类提供的功能。

    例如,如果你有一个名为User的类,你需要保存它,你可以这样做

    class User extends BaseUser //or whatever you want
    {
        public function saveNewUser($data) {
            //setting the userdata e.g. $this->username
            try {
                $this->save();
                ....
            } catch (Doctrine_Connection_Mysql_Exception $e) {
               ...
            }
        }
    }
    

    所以你在模型中拥有你想要的所有功能。

    【讨论】:

      猜你喜欢
      • 2015-04-24
      • 1970-01-01
      • 2013-01-17
      • 2016-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-11
      • 2016-12-30
      相关资源
      最近更新 更多