我试图想出一个标准的方法来在索引页上为同一模型创建多个表单。这里有更多的细节。如何在CakePHP的单个页面上创建多个表单?
我有一个活页夹列表,每个活页都显示一个备忘录。我希望备忘录字段可以从索引页面进行编辑。显然,它不工作只是复制和粘贴视图的edit_memo行动,就像这样:
<?php echo $this->Form->create('Binder');?>
<fieldset>
<legend><?php __('Edit Memo'); ?></legend>
<?php
echo $this->Form->input('id');
echo $this->Form->input('memo');
?>
</fieldset>
<?php echo $this->Form->end(__('Submit', true));?>
但是,这基本上就是我希望做。在上下文中,我只是循环索引操作中的活页夹,备忘录是模型的一部分。
我试图改变$this->Form->create('Binder')
以下几点:
$this->Form->create(null,array(
'id'=>"BinderEditMemo.$i",
'controller' => 'binders',
'action' => 'edit_memo',
'id' => $binder['Binder']['id']
));
,但没有运气。备忘录字段仍然得到正规的ID,所以我想我可能也需要改变它。当我提交表单时,它会执行该操作,但它不会保存。仅供参考,我已将路由ID参数路由到行动。
我确定在索引循环中必须有一种标准方式来呈现多个表单。有什么想法吗?
完美。最终代码发布为答案。不知道这是否是在这里做事的最佳方式。谢谢! – dbme 2011-03-17 03:11:50
没问题。随意上船以及接受。 /无耻;) – 2011-03-17 03:32:17