cakephp通知8:未定义索引:
我在我的view.ctp页面上看到了关于类别、产品和尺寸的cakephp通知8 以下是我的ProductsController供查看:cakephp通知8:未定义索引:,cakephp,Cakephp,我在我的view.ctp页面上看到了关于类别、产品和尺寸的cakephp通知8 以下是我的ProductsController供查看: public function view($id) { $result = $this->Product->find('all', array( 'contain' => array( 'Category' => array( 'Size'
public function view($id) {
$result = $this->Product->find('all', array(
'contain' => array(
'Category' => array(
'Size'
)
),
'conditions' => array(
'Product.id' => $id
)
));
$this->set(compact(
'result'
));
以下是view.ctp:
<?php
$product = $result['Product'];
$category = $result['Category'];
$sizes = $category['Size'];
pr($result);
echo "<h2>" . $product['name'] . "</h2>";
echo "<div>". $product['description'] . "</div>";
echo $this->Form->create();
echo $this->Form->input('sizes');
echo "<h3>" . $size['name'] . "</h3>";
//echo $this->Html->link('Add to Paypal cart', $paypalUrl);
echo '<br />';
echo '<br />';
echo '<h3>Add to cart</h3>';
echo $this->Form->create(false); // FALSE FOR NO MODEL
echo $this->Form->input('quantity');
echo $this->Form->submit('Add to cart');
echo $this->Form->end();
?>
所以所有的信息都在那里,但没有显示出来。我有一种感觉,我没有正确地调用该信息,但我不明白为什么该信息没有定义,如果它存在的话。谢谢你的指导,我是个笨蛋
谢谢您应该使用循环来表示$result的数据。在这种情况下,只需更换
$product = $result[0]['Product'];
$category = $result[0]['Category'];
$sizes = $category['Size'];
反而
$product = $result['Product'];
$category = $result['Category'];
$sizes = $category['Size']
更新:
也许是这个打字错误:echo$大小['name'];因为您创建了一个$sizes数组,所以您没有指定正在使用的蛋糕的版本。但是,如果是2.x,您可以使用first而不是all。比如$result=$this->Product->find'first',数组。你的观点会起作用。。。谢谢你!使用“第一”有帮助!现在这些大小没有显示出来,但正如AgRizzo指出的,我需要做一个选择下拉列表,我在文档的formHelper部分中读到了这一点。我要去玩那个。再次感谢所有帮助你的朋友!非常感谢。我也要试试!
$product = $result['Product'];
$category = $result['Category'];
$sizes = $category['Size']
foreach($sizes as $size) {
echo "<h3>" . $size['name'] . "</h3>";
}