我有一个模型从我的数据库中提取一个我希望能够在我的视图中显示的列表。
该模型如下所示:
Class Model_services extends Model
{
public function get_services_list() {
$result = DB::select('*')->from('services')
->execute()
->as_array();
return $result;
}
}
我的控制器看起来像这样:
public function action_index()
{
$this->template->title = "services";
$this->template->header = View::factory('header');
$services = Model::factory('services');
$this->template->content = View::factory('services')
->bind('result',$result)
$this->template->footer = View::factory('footer');
}
如何在视图中渲染模型中的变量?
答案 0 :(得分:2)
您实际上没有调用模型方法或将变量从控制器类传递给视图。
改变这个:
$services = Model::factory('services');
$this->template->content = View::factory('services')
->bind('result',$result);
对此:
$services = Model::factory('services')->get_services_list();
$this->template->content = View::factory('services')
->bind('result', $services);
这里的变化是:
$services
变量并将其绑定到您将在视图中使用的$result
。在您的视图中,您可以在引用$result
变量时提取值。
要查看您从模型中获得的内容,请在您的视图中对此进行测试:
echo Debug::vars($result);
答案 1 :(得分:0)
在 services.php 中,使用以下代码;)
foreach($result as $item) {
echo Debug::vars($item);
// print_r($item); //alternatively you can try this also, if Debug::vars() causes pain
}