0

Form::select を使用するには、名前と 2 つの配列を追加する必要があります。

通常、1 つは ID で、もう 1 つは名前です。どちらもクエリからロードする必要があります。

したがって、モデルには次のようなものがあります。

public static function get_ids()
{
    //return DB::query('select id FROM __roles');
    return DB::table('roles')->get(array('id'));
}

//Returns an array with all the names
public static function get_names()
{
    //return DB::query('select name FROM __roles');
    return DB::table('roles')->get(array('name'));
}

ただし、これにより次のことがわかります。

Array ( [0] => stdClass Object ( [id] => 1 ) [1] => stdClass Object ( [id] => 2 ) [2] => stdClass Object ( [id] => 3 ) )

私はこのようなものを取得したいと思います:

Array ( [0] => '1'  [id] => '2' [id] => '3' )

フォームの場合

Form::select('role', array(Role::get_ids(), Role::get_names())); 
4

2 に答える 2

0

私はこのオプションを試しました:

 $projects = Project::where('user_id', Auth::user()->id)->lists('name', 'id');

テンプレート内:

{{ Form::select('project', $projects) }}
于 2013-07-17T20:36:43.903 に答える
0

これは機能しますか?

public static function get_ids()
{
    //return DB::query('select id FROM __roles');
    return DB::table('roles')->get(array('id'))->to_array();
}

//Returns an array with all the names
public static function get_names()
{
    //return DB::query('select name FROM __roles');
    return DB::table('roles')->get(array('name'))->to_array();
}
于 2013-02-08T13:59:01.550 に答える