0

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

Array (
    [0] => Array (
            [EventoObreiro] => Array (
                    [id] => 1
                    [evento_id] => 2
                    [obreiro_id] => 5
                )
        )
    [1] => Array (
            [EventoObreiro] => Array (
                    [id] => 2
                    [evento_id] => 2
                    [obreiro_id] => 3
                )
        )
)

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'));

但我的表格不是自动填充的。我怎么能做到这一点?

4

1 回答 1

2

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

  1. 确保来自的信息$this->EventoObreiro->find('all');实际发送到视图。您可以使用<?php echo debug($obreiros); ?>. 如果没有发送,您应该验证您的控制器代码 [甚至可以编辑您的帖子并添加它以清楚起见。]

  2. 我在你的数组中没有看到任何Usuario所以也许可以尝试使用$obreiro['EventoObreiro']['key']而不是$obreiro['Usuario']['key']

于 2012-05-09T18:35:39.383 回答