我取消了用CakePHP编写的某人的项目。我熟悉MVC范例,而不是Cake。
生成的HTML是一个选择下拉列表。此下拉列表的数据来自控制器,分配如下:
$this->set(compact('venues', 'eventTypes', 'positions', 'hms'));
其中$ hms是包含select元素数据的数组(从模型上的查询定义)。但是在视图中,这是我对下拉列表的全部内容:
echo $this->Form->input('Event.hm_id', array('label' => 'House Manager', 'empty' => '(none)', 'class' => 'chzn-selectaaa'));
在视图中,我期待看到一些关于$ hms值的参考。 HTML表单助手在哪里获取数据以构建下拉列表?
答案 0 :(得分:0)
在输入表单助手上发生了一些自动接线魔法,它将hms数组映射到hm_id。
这段CakePHP文档应该可以帮助你理解魔法是如何实际完成的。它完全基于DB和模型本身的表和字段中的命名约定。
http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#creating-form-elements
这也是API文档片段。
http://api.cakephp.org/2.6/class-FormHelper.html#_input
我希望这会有所帮助。