CakePHP不是自动生成的

CakePHP不是自动生成的,php,cakephp,cakephp-1.3,Php,Cakephp,Cakephp 1.3,来自$this->EventoObreiro->find('all')的数据: HTML格式: <?php echo $this->Form->create('EventoObreiro', array('url' => '/eventos/presenca/' . $evento['Evento']['id'])); ?> <?php if(count($obreiros) > 0) { ?> <?php forea

来自
$this->EventoObreiro->find('all')的数据

HTML格式:

<?php echo $this->Form->create('EventoObreiro', array('url' => '/eventos/presenca/' . $evento['Evento']['id'])); ?>
    <?php if(count($obreiros) > 0) { ?>
        <?php foreach($obreiros as $k => $obreiro) { ?>
            <?php echo($obreiro['Usuario']['nome']); ?>
            <?php echo($this->Form->input('EventoObreiro.' . $k . '.obreiro_id', array('type' => 'hidden', 'value' => $obreiro['Obreiro']['id']))); ?>
            <?php echo($this->Form->input('EventoObreiro.' . $k . '.evento_id', array('type' => 'radio', 'legend' => false, 'options' => array('1' => 'Sim', '0' => 'Não')))); ?>
        <?php } ?>
    <?php } ?>

    <?php echo $form->button('Salvar presença', array('type' => 'submit', 'class' => 'button', 'name' => 'botaoAdicionar')); ?>
<?php $this->Form->end(); ?>

$obreiros
$this->set('obreiros',$this->Obreiro->find('all')设置


但是我的表单不是自动填充的。如何做到这一点?

这可能有很多问题,您的代码不清楚,但请查看以下内容:

  • 确保来自
    $this->EventoObreiro->find('all')的信息实际上已发送到视图。您可以使用
    执行此操作。如果没有发送,你应该验证你的控制器代码[甚至可能编辑你的帖子并添加它以保持清晰。]

  • 我在您的数组中没有看到任何Usuario,因此可以尝试使用
    $obreiro['EventoObreiro']['key']
    而不是
    $obreiro['Usuario']['key']


  • 似乎是这样,如果recursive设置正确,那么关联应该显示在数组中。祝你好运
    <?php echo $this->Form->create('EventoObreiro', array('url' => '/eventos/presenca/' . $evento['Evento']['id'])); ?>
        <?php if(count($obreiros) > 0) { ?>
            <?php foreach($obreiros as $k => $obreiro) { ?>
                <?php echo($obreiro['Usuario']['nome']); ?>
                <?php echo($this->Form->input('EventoObreiro.' . $k . '.obreiro_id', array('type' => 'hidden', 'value' => $obreiro['Obreiro']['id']))); ?>
                <?php echo($this->Form->input('EventoObreiro.' . $k . '.evento_id', array('type' => 'radio', 'legend' => false, 'options' => array('1' => 'Sim', '0' => 'Não')))); ?>
            <?php } ?>
        <?php } ?>
    
        <?php echo $form->button('Salvar presença', array('type' => 'submit', 'class' => 'button', 'name' => 'botaoAdicionar')); ?>
    <?php $this->Form->end(); ?>