在codeigniter中甚至有可能这样做吗?它被认为是一般的良好习惯吗?我可以将参数传递给模型函数吗?
1
A
回答
2
是的,这是可能的。
我一直这样做,如果数据不是来自后我可以发送到模型。
$this->load->model('some_model');
$this->some_model->some_function($var);
你想发送什么样的数据给模型?这将有助于决定这是否是不好的做法。
1
当然这是可能的!就像Kieran所说的,你可以在接受参数的模型类中编写函数。
请记住,您的控制器应首先解析/验证这些参数,您的模型中不应包含额外的验证。您的模型应严格用于写入和读取数据库。
因此,作为一种良好的做法,您应该只传递包含实际数据的参数,以便在您的查询中存储或使用。
我通常为不同的WHERE情况编写不同的函数。例如:
select($id){}
select_by_name($name){}
...
这让您的模型更容易理解。我唯一的例外是限制你的结果。在我所有的车型,我对功能选择的所有记录,同时可以选择通过两个变量为分页目的:
select_all($start=null,$limit=null){
$qry = "SELECT * FROM ...";
if($start != null) $qry .= " LIMIT ?,?";
return $this->db->query($qry,func_get_args());
}
相关问题
- 1. 我可以将参数传递给PowerShell函数Unix方式吗?
- 2. 我可以将参数传递给std :: vector排序函数吗?
- 3. 可以将可变数量的参数传递给函数吗?
- 4. 我可以将类型作为参数传递给此函数吗?
- 5. 我可以将参数/开关/参数传递给VSPackage MenuCommand吗?
- 6. 将参数传递给原型函数
- 7. 我可以将非类型模板参数传递给重载操作符吗?
- 8. 我可以将参数传递给我的fsyacc分析器吗?
- 9. odp.net可以将参数传递给布尔pl/sql参数吗?
- 10. 我可以将异常作为参数传递给python中的函数吗?
- 11. 使用QObject :: connect时,我可以将参数传递给slot函数吗?
- 12. 我可以将属性列表作为&键参数传递给函数吗?
- 13. 我可以将参数传递给自定义log4net Appender的构造函数吗?
- 14. 我可以将构造函数参数传递给Unity的Resolve()方法吗?
- 15. 我可以将参数传递给客户端HTML页面吗?
- 16. 我可以将参数传递给F#FAKE构建脚本吗?
- 17. 我可以将参数传递给Pig脚本中的UDF吗?
- 18. 我们可以将参数传递给C中的信号吗?
- 19. 我可以在NHibernate中将参数传递给ISessionFactory吗?
- 20. 使用Watir时,我可以将-f参数传递给iexplore.exe吗?
- 21. 我可以将其他参数传递给Ember-Model belongsTo吗?
- 22. 我可以将参数从Qt Creator传递给xcodebuild吗?
- 23. 我可以将参数传递给jqModal中的ajax吗?
- 24. 我们可以将参数传递给SQL中的视图吗?
- 25. 我可以将knife.rb作为参数传递给knife命令吗?
- 26. 我可以将参数传递给ClearCase触发器吗?
- 27. 我可以将参数传递给rake db:seed吗?
- 28. 我可以使用JSF flash将参数传递给Servlet吗?
- 29. 我可以将参数从Grunt传递给Javascript吗?
- 30. 我可以将参数传递给iphone方法的clickedButtonAtIndex吗?
这是值得商榷的模型是否应该也有输入验证或没有,所以不要”不要把它当作事实。一个坚实的分层架构在各个层面都有验证。由于不能直接在CI之外调用Model方法,因此尽管对查询的输入检查仍然适用,但仍可以在Model中不重复验证。 – Ferdy 2010-11-02 10:18:20