2015-08-27 4 views
1

// контроллерпередача значений массива от контроллера для просмотра в CakePHP

public function viewcategorys1() { 
$this->loadModel("Category"); 
$total = $this->Category->find('all', array('fields' =>array('sum(Category.rate) AS ctotal'), 'conditions'=>array('Category.parentid' => 0))); 
$this->set('sum',$total); 
print_r($total); 
} 

// вид

<?php 
foreach($sum as $ctotal): 
echo $ctotal['Category']['rate']; 
endforeach; 
?> 

в контроллере я написал 'print_r' так, что он показывает, как из положить:

Array ([0] => Array ([0] => Array ([ctotal] => 16250))) 

в соответствии с кодом, написанным в виде файла, он показывает, что:

Notice (8): Undefined index: category[APP/View/Category/viewcategorys1.ctp, line 48] 
Code Context 
include - APP/View/Category/viewcategorys1.ctp, line 48 
View::_evaluate() - CORE/Cake/View/View.php, line 945 
View::_render() - CORE/Cake/View/View.php, line 907 
View::render() - CORE/Cake/View/View.php, line 471 
Controller::render() - CORE/Cake/Controller/Controller.php, line 952 
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 194 
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 162 
[main] - APP/webroot/index.php, line 96 

Как напечатать значение i.e 16250 в файле view.ctp? пожалуйста, помогите мне

+0

Это все данные? – aldrin27

+0

Это работает, спасибо за помощь –

+0

Хорошо. Пожалуйста, отметьте это как принято. Спасибо. – aldrin27

ответ

0

Вы можете сразу напечатать всего на CTP

echo $total[0][0]['ctotal']; 

Другой путь необходимо создать виртуальное поле

модальный

public $virtualFields = array(
    'ctotal' => 'sum(Category.rate)' 
); 

В контроллере

public function viewcategorys1() { 
$this->loadModel("Category"); 
$total = $this->Category->find('all', array('fields' =>array('Category.ctotal'), 'conditions'=>array('Category.parentid' => 0))); 
$this->set('sum',$total); 
print_r($total); 
} 
0

Попробуйте это, если он работает:

<?php 
    foreach($sum[0] as $ctotal): 
    echo $ctotal['ctotal']; 
    endforeach; 
?> 
+0

он работает, спасибо за помощь. –

+0

@ Naga Phaneendra. Рад помочь. Пожалуйста, отметьте это как принятое, если оно решит вашу проблему. – aldrin27

Смежные вопросы