LoginSignup
1
0

More than 5 years have passed since last update.

FuelPHPでテーブルから取得した値をセレクトボックスにして表示する(もしかたら)一番簡単な方法!

Posted at

はじめに

「優しいIT」という理念の基、ITコンサルタントをしている亀井亮介と申します!
主な仕事は要求分析・要件定義の上流工程から、開発のマネジメントまでしていますが、プライベートでウェブシステム開発をしています!

目的

FuelPHPで、データベースのテーブルから値を取得して、セレクトボックスを表示する方法が幾つかあります。
コントローラーで、値を取得して、ビューに渡す…というのがスタンダードと思っていたのですが、もしかすると、下記の方法が一番簡単で、すっきりしているのではないでしょうか
(深く検証していませんが)

コントローラーを経由せず、ビューにモデルで定義したデータ取得メソッドを使うので、すっきり綺麗に分けられると思います。

ビュー側
echo Form::select(
      'round_id'
    , Input::post('round_id')
    , Arr::pluck(Model_Round::find('all') , 'round_name', 'id')
    , array('class' => 'col-md-4 form-control')
);

ポイント

Arr::pluck()メソッドを使い、第1引数にModel_Round::find('all')をセット

Roundsというテーブルから値をすべて取得しリスト化
Arr::pluck(Model_Round::find('all') , 'round_name', 'id')

Arr::pluck()メソッド
第1引数 マスタから取得した配列(Model_Round::find('all')で値をすべて取得)
第2引数 セレクトボックスに表示するカラム
第3引数 セレクトボックスのvalueにセットするカラム

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0