首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CodeIgniter - MVC方法问题

CodeIgniter - MVC方法问题
EN

Stack Overflow用户
提问于 2011-07-25 23:26:52
回答 3查看 571关注 0票数 1

我目前正在用CodeIgniter做一个应用程序,我想知道我应该如何处理模型。我现在设置它的方式是:

视图:显示控制器:显示相关内容、表单验证、重定向、与库对话等库:执行繁重任务、与模型对话、生成错误消息、日志等模型:与数据库对话

(我目前在大多数情况下都在使用活动记录)

让我直接举个例子:

我有一个Auth库,在里面我有一些类似的查询,只是在WHERE子句中的值有所不同。

例如:

代码语言:javascript
运行
复制
get_by_id($id);
get_by_password_hash($email);
get_by_email($email);

我应该有一堆重复的模型函数,还是应该只有一个简单的函数,我通过库传递where子句之类的东西?

例如:

代码语言:javascript
运行
复制
$where = array('id' => $id);
get($where);

如果你想让我澄清什么,请告诉我。提前谢谢。

EN

Stack Overflow用户

发布于 2011-07-26 03:32:36

我很清楚你是从哪里来的,因为几个月前我也有同样的疑虑。

我使用https://bitbucket.org/philsturgeon/codeigniter-base-model/src/93a643d0d46f/MY_Model.php

把它当做一个库就行了。将模型创建为

代码语言:javascript
运行
复制
// user_m.php
<?php (defined('BASEPATH')) OR exit('No direct script access allowed');
class User_m extends MY_Model
{}

除了基本的CRUD函数之外,上面的函数还可以包含您想要的任何自定义函数。

在控制器中运行代码的方式为

代码语言:javascript
运行
复制
   $this->load->model('user_m');
   $this->data['user'] = $this->user_m->get($user_id);

代码语言:javascript
运行
复制
   $this->load->model('user_m');
   $this->data['user'] = $this->user_m->get_by(array('something_id' => $something));

它有你需要的所有基本的CRUD操作。只需阅读代码,它也有很好的文档记录。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6818447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档