【发布时间】:2011-11-07 22:40:33
【问题描述】:
我正在学习 CodeIgniter。我想知道在更新数据库时获取表单 POST 数据的最佳做法是:从控制器还是从模型?
如果我们在Controller中获取POST数据,那么我们需要将数据作为参数传递给Model函数,但是Model函数可以以其他形式使用。如果我们直接在Model中获取POST数据,那么就可以省去传参这一步,但是仅限于一些特定的形式。
哪一个是最佳实践?
谢谢。
【问题讨论】:
标签: codeigniter
我正在学习 CodeIgniter。我想知道在更新数据库时获取表单 POST 数据的最佳做法是:从控制器还是从模型?
如果我们在Controller中获取POST数据,那么我们需要将数据作为参数传递给Model函数,但是Model函数可以以其他形式使用。如果我们直接在Model中获取POST数据,那么就可以省去传参这一步,但是仅限于一些特定的形式。
哪一个是最佳实践?
谢谢。
【问题讨论】:
标签: codeigniter
最佳做法是在控制器中处理视图代码(表单响应等),然后将所需的任何内容作为参数传递给模型。
这可以实现最大程度的重用,因为您的模型(及其方法)可以被重用,例如,如果您有不同的视图和控制器需要该模型以不同的方式处理表单(例如 API)。
【讨论】:
最好的做法是在 Controller 和服务层进行所有数据处理,然后只将所需的数据传递给 Modal 或 View。这样,您就有了受控的信息流和概念之间的清晰分离。 Model 对象只能通过 ORM 用作数据对象,仅此而已。控制器应包含所有业务逻辑。
【讨论】: