2010-05-13 79 views
1

我手动创建一个简单的形式与一个文本框中输入字段这样的:
HTML文本框中输入VS CakePHP的AUTOMAGIC表单元素

<form action="/user/add" method="post"> 
<input type="text" name="data[user_id]" value="1"> 

但是,当我在控制器调用$this->model->save($this->data)
没有被保存到桌上。

只有当我用这一点,在字段中的数据被写入到成功的数据库:

$form->create(null, array('url' => '/user/add')); 
echo $form->input('user_id', array('label' => 'User ID', 'value' => '1')); 

回答

3

如果你想手动创建表单,输入部分的名称应该是

<input type="sometype" name="data['modelname']['fieldname']" value="somevalue"> 

而在你的代码应该是

<form action="/user/add" method="post">  
<input type="text" name="data['User'][user_id]" value="1"> 

请参阅食谱中的automagic form elements

+0

+1,你应该看看工作代码的来源,并亲自看看表单元素的命名。无论如何你需要创建一个表单! – sibidiba 2010-05-13 08:56:28

+0

@ sibidiba,哦不,你已经忘记了投票,哈哈 – Young 2010-05-13 12:28:33

+0

正确答案,我投了个赞成:) – Ashok 2010-05-13 17:37:38