我目前正在用CodeIgniter做一个应用程序,我想知道我应该如何处理模型。我现在设置它的方式是:
视图:显示控制器:显示相关内容、表单验证、重定向、与库对话等库:执行繁重任务、与模型对话、生成错误消息、日志等模型:与数据库对话
(我目前在大多数情况下都在使用活动记录)
让我直接举个例子:
我有一个Auth库,在里面我有一些类似的查询,只是在WHERE子句中的值有所不同。
例如:
get_by_id($id);
get_by_password_hash($email);
get_by_email($email);我应该有一堆重复的模型函数,还是应该只有一个简单的函数,我通过库传递where子句之类的东西?
例如:
$where = array('id' => $id);
get($where);如果你想让我澄清什么,请告诉我。提前谢谢。
发布于 2011-07-26 03:32:36
我很清楚你是从哪里来的,因为几个月前我也有同样的疑虑。
我使用https://bitbucket.org/philsturgeon/codeigniter-base-model/src/93a643d0d46f/MY_Model.php
把它当做一个库就行了。将模型创建为
// user_m.php
<?php (defined('BASEPATH')) OR exit('No direct script access allowed');
class User_m extends MY_Model
{}除了基本的CRUD函数之外,上面的函数还可以包含您想要的任何自定义函数。
在控制器中运行代码的方式为
$this->load->model('user_m');
$this->data['user'] = $this->user_m->get($user_id);或
$this->load->model('user_m');
$this->data['user'] = $this->user_m->get_by(array('something_id' => $something));它有你需要的所有基本的CRUD操作。只需阅读代码,它也有很好的文档记录。
https://stackoverflow.com/questions/6818447
复制相似问题