CakePHP字段中的fieldname是一个值

CakePHP字段中的fieldname是一个值,cakephp,cakephp-2.1,Cakephp,Cakephp 2.1,我在一页上有这样一张表格: <form action="/store_collections/create" method="post"> <input type="text" name="data[test]" placeholder="Create new collection" class="span2"> </form> 这是怎么可能的???字段的名称被附加到值后。值应该是fds,但它是fdsdata[test]=fds 有什么想法吗?我从控

我在一页上有这样一张表格:

<form action="/store_collections/create" method="post">
    <input type="text" name="data[test]" placeholder="Create new collection" class="span2">
</form>
这是怎么可能的???字段的名称被附加到值后。值应该是
fds
,但它是
fdsdata[test]=fds


有什么想法吗?我从控制器($uses…)中删除了所有内容,以查看它可能是什么。网站上的所有其他表格都可以。仅提交到此控制器的数据。

上面示例中的输入控件名称属性缺少模型名称。是否使用表单帮助器在视图上创建表单?在您的视图中尝试以下操作:

<?php echo $this->Form->create('StoreCollection'); ?>
<?php echo $this->Form->input('test'); ?>
<?php echo $this->Form->end('submit'); ?>


为什么不使用form helper生成和输出表单?我正在使用FormHelper。我只是以主要元素的一个片段/示例为例。问题在于字段值具有字段名。如果我的文本字段名为
data[StoreCollection][title]
,也会发生同样的情况。
$this->request->data
此时不关心模型是否在输入名称中……更新:Ok。FormHelper确实有点帮助,但主要是因为它插入了
。这一定是安全问题。我会仔细阅读的。一旦我有更多信息,我会更新。不过很奇怪。我的其他表单没有
\u方法
字段,工作得很好。我不知道你在做什么。但是上面这些对我来说很好。结果是正确的(尽管我使用了2.3)。此外,如果您实际使用了FormHelper,该字段将是“name=”data[Modelname][test]”,在视图中显示您的代码。正在创建的字段名不正确。我使用的是FormHelper。表单就是一个例子。@Bill Rollins:您在end()中输入了sth,从而忘记了提交按钮
Array
(
     [test] => fdsdata[test]=fds
)
<?php echo $this->Form->create('StoreCollection'); ?>
<?php echo $this->Form->input('test'); ?>
<?php echo $this->Form->end('submit'); ?>