cakephp不能将字符串偏移量用作数组

时间:2012-08-10 12:05:39

标签: arrays cakephp view

大家好我在视图中尝试打印数组中的信息时出现此错误。

这是我在控制器中的功能

public function view($name)
$fields = $this->Template->Field->find('list',array( 
          'fields'=> array('name'),
          'conditions' => array(
          'template_id'=> $name)));
$this->set('field', $fields);

这是视图

</br><h2>Here is your template fields</h2></br>

            <?php if(!empty($field))
                  {
                    foreach($field as $name)
                    {?>
                        <tr>
                        <td>
                        <?php echo $name['Field']['name']; ?>
                        </tr></br>
                        <?php
            }
            }
            else
            {?>
             <tr> <td>No Templates Found.</td></tr>
             <?php 
             }?>

2 个答案:

答案 0 :(得分:2)

我已经回答了你的一些问题。所以我对你的项目的理解是“模板有多个字段”,你已经在相应的模型中定义了一个关联。

您应该在视图中使用以下代码:

<?php if(!empty($field))
              {
                foreach($field as $name)
                {?>
                    <tr>
                    <td>
                    <?php echo $name; ?>
                    </td>
                    </tr>
                    <?php
        }
        }
        else
        {?>
         <tr> <td>No Template Fields Found.</td></tr>
         <?php 
         }?>

答案 1 :(得分:0)

你有类型列表的操作,所以结果将是[field.id] =&gt;中的数组[field.name]

然后你需要在视图中跟随

<?php foreach($field as $name): ?>
<?= $name ?>
<?php endforeach ?>