如何从 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 字段中添加注册中的隐藏值的主要内容,如果未能解决你的问题,请参考以下文章

如何将django组字段添加到客户用户注册表

如何在 CakePHP 控制器中使用多个模型

cakephp:从下拉列表中为报告添加过滤器

在 CakePHP 中保存没有数据的模型(只需在 db 中创建 id)

Cakephp:使用一个comman字段将多条记录添加到单个模型

CakePHP:向表单添加字段(动态)