【发布时间】:2011-05-01 04:23:08
【问题描述】:
您好,您只需要知道您是否可以从帮助程序类中查询数据库,是否应该以及如何查询。
谢谢
【问题讨论】:
标签: cakephp-1.3 helpers
您好,您只需要知道您是否可以从帮助程序类中查询数据库,是否应该以及如何查询。
谢谢
【问题讨论】:
标签: cakephp-1.3 helpers
是的。您可以从帮助文件中查询数据库。请检查:-
class YourHelperNameHelper extends AppHelper {
function queryDbFromHelper()
{
// Load your model here
App::import('Model','ModelName');
$this->ModelName = new ModelName();
//now you can use find method or another method to query DB.
return $this->ModelName->find('all');
}
}
// Include this helper in controller
var $helpers = array('YourHelperName');
// call this function in helper file.
$this->YourHelperName->queryDbFromHelper();
【讨论】:
您可以通过 $this->set() 将对模型的引用作为变量传递到视图中,然后查询它...但您不应该这样做。很乱;-)
CakePHP 使用 MVC 模型,助手是视图(MVC 的 V)的一部分——它们的工作纯粹是显示从控制器传递给它的(已经可用的)信息。
如果您的视图需要额外的信息,那么您的控制器应该已经查询了模型以获取它。
如果您不熟悉 MVC 模型,我建议您阅读它,然后可能需要进行一些重构!
【讨论】: