0

大陸と国があり、大陸には多くの国があると仮定すると、このような選択ドロップダウンを作成する簡単な方法はありますか?

$this->form->select('countries');

私は次のようなコードを書こうとしています:

// in the controller
$this->set('countries', $this->Country->find('all', array('fields' ...)))

// in the view
$this->Form->select('countries')

これらの選択肢をまとめてグループ化したいのですが、データを再配置するために多くの余分なロジックを書くことは避けます。

4

1 に答える 1

4

このように配列を形成すると、それが実行されます。

$countries = array(
    'North America' => array(
        123 => 'Canada'
        ...
        ...
    ),
    'South America' => array(
        345 => 'Argentina'
        ...
        ...
    ),
);

次に、通常どおりフォーム ヘルパーを使用します。

$this->Form->select('countries');

ノート

選択には使用できませんfind('all')find('list')からのデータを使用または再フォーマットする必要がありますfind('all')

于 2012-12-30T22:44:27.617 に答える