Cakephp 隐藏输入字段


Cakephp hidden input field

所以我有这个字段,我想在我的表单中隐藏。

为此,我尝试了以下方法:

<?php echo $this->Form->input('group_id', array('hiddenField' => true, 'value'=> 2)); ?>

我也试过:

<?php echo $this->Form->input('group_id', array('options' => array('hiddenField'=> 'true'), 'value'=>2 )); ?>

我怎么还看到输入字段..

我做错了什么?

我假设你误读了文档。 hiddenField是启用/禁用特定表单字段的特定隐藏字段。

你要么在寻找

$this->Form->hidden('group_id')

$this->Form->input('group_id', ['type' => 'hidden']);

我通常只使用后者。

请参阅 http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html

但是 - 也就是说 - 你实际上不应该使用其中任何一个。并省略任何对视图及其形式没有实际用途的字段。相反,您应该在保存之前将这些字段注入数据数组。见 http://www.dereuromark.de/2010/06/23/working-with-forms/

如果您希望添加一个隐藏字段,该字段使用默认情况下不会通过 post 传递或放置的相关第二个数据数组,您可以使用它来传递它:

echo $this->Form->hidden('Group.name');

这对于在帖子或放置遇到错误时回显编辑页面标题很有用。设置表单时,动态标题可能会丢失Group.name数据数组,如下所示:

<h1>Edit Group - <?php echo h($this->request->data['Group']['name']); ?></h1>

但是,对于要保存到数据库的数据,请遵循上面的 Mark 建议。

尝试按照 cakephp 3 中的代码设置隐藏字段

<?php
        echo $this->Form->hidden('name');
 ?>