在Rails和CakePHP1.2中,表单往往包含名称如下的输入元素:
<input name="comment[author]" />
“name”属性中使用的符号是否有正式名称?
同样,在CakePHP1.1中,我确实认为同样如下:
<input name="comment/author" />
同样,“name”属性中使用的符号是否有正式名称?
答案 0 :(得分:4)
在Rails中,这被称为表格微格式(至少有些人称之为)。许多不同的框架似乎正在标准化第一种格式。我想像CakePHP已经更新了他们的库以符合该标准。有an obsessively in-depth explanation可用,只有一点Rails特定。最初的微格式显然来自PHP。
答案 1 :(得分:1)
在cake php中,命名方案是多维数组访问格式,虽然我不确定你称之为什么。多维数组键控?
official php docs将其称为“方括号”
基本上,我不确定cakephp是否有特定的名称...这是因为它只是键控数组访问的“括号表示法”。
Here's an example from the cakephp docs。它说明了cakephp中带括号表示法的命名元素,以及如何使用它来预先填充值。
使用cake php FormHelper我们创建一个隐藏的id字段:
echo $this->Form->hidden('id'):
这将输出以下内容:
<!-- data comes from $this->request->data -->
<input name="data[User][id]" id="UserId" type="hidden" />
假设data[User][id]
持有的值为10
,ID为UserId
的输入的值为10.
答案 2 :(得分:0)
在Rails中,分配给表单元素中name
属性的字符串值作为params[]
哈希中的哈希值传递给Controller,由key索引。
<input name="username"/>
将在控制器中显示为params[:username]
。
<input name="user[name]"/>
将在控制器中显示为params[:user][:name]
。
等等。如果您想了解有关如何生成这些内容以及期望内容的更多信息,请参阅ActionView和ActionController文档。
这是指向ActionController overview的链接,这是一个很好的指南。