FuelPHPのFieldsetでセレクトボックスにoption要素を配列でセットする


FuelPHPドキュメントのFieldsetページには、記述が見当たらなかったのでメモ代わりに。

test_formというフォームには、language_idというセレクトボックスがあるという場合。

$test_form = Fieldset::forge('test_form')->add_model('Model_Test');

$language_options = array();
$language_options[1] = '日本語';
$language_options[2] = '英語';
$language_options[3] = 'スペイン語';

$test_form->field('language_id')->set_options($language_options);

出力されるHTMLソースはこんな感じに。

<select id="language_id" name="language_id">
	<option value="1">日本語</option>
	<option value="2">英語</option>
	<option value="3">スペイン語</option>
</select>

set_optionsに配列を渡せばOKです。
実際に使う場合は、DBからidと文字列を取得し、foreachを使って配列にセットし、set_optionsにその配列を渡す、という感じになるかと思います。

コメントを残す

メールアドレスが公開されることはありません。