假设我有大陆和国家,而且大陆有很多国家, 是否有一种简单的方法来创建这样的选择下拉列表?
我正在尝试编写代码:
// in the controller
$this->set('countries', $this->Country->find('all', array('fields' ...)))
// in the view
$this->Form->select('countries')
我想将这些选择组合在一起,但是避免编写大量额外的逻辑来重新排列数据。
答案 0 :(得分:4)
如果您像这样形成阵列,它将会这样做:
$countries = array(
'North America' => array(
123 => 'Canada'
...
...
),
'South America' => array(
345 => 'Argentina'
...
...
),
);
然后像普通一样使用表单助手。
$this->Form->select('countries');
您无法使用find('all')
进行选择。您需要使用find('list')
或重新格式化find('all')