如何从 cakephp 的 db 字段中添加注册中的隐藏值
Posted
技术标签:
【中文标题】如何从 cakephp 的 db 字段中添加注册中的隐藏值【英文标题】:how to add hidden value from registeration from in db field in cakephp 【发布时间】:2013-02-27 10:30:35 【问题描述】:我有一份注册表。我想以这种形式传递隐藏的价值。我在数据库“lang”中创建了一个字段。在注册表单中,我这样做了: echo $form->hidden('lang', array('value' => '1'));但它没有保存数据库中的值。抱歉,我在 cakephp 方面没有经验,所以请如果有人在所有过程中帮助我。谢谢
【问题讨论】:
如何从您的视图(表单)和保存数据的控制器逻辑中显示一些代码? 【参考方案1】:你不应该仅仅为了它而在表单中传递隐藏的东西。 如果可以,请在实际保存之前添加这些值。 详情见http://www.dereuromark.de/2010/06/23/working-with-forms/
基本上,你这样做:
if ($this->request->is('post') || $this->request->is('put'))
$this->Post->create();
// add the content before passing it on to the model
$this->request->data['Post']['lang'] = '1';
if ($this->Post->save($this->request->data))
...
【讨论】:
.ctp文件应该怎么做? 当我转储发布的值时,它表明我得到了这个值 ["lang"]=> string(1) "1",但它仍然没有保存在数据库中 我正在获取数据直到这里 if($this->save($data)) // 当我转储 $data 时,我在这里有 lang,但是当我转储下来时 // 获取最后一个插入的用户 $user = $this->read(null, $this->getLastInsertID()); // var_dump($user);出口;在这里我看到了lang,我不知道为什么以上是关于如何从 cakephp 的 db 字段中添加注册中的隐藏值的主要内容,如果未能解决你的问题,请参考以下文章
在 CakePHP 中保存没有数据的模型(只需在 db 中创建 id)