Php Laravel-使用派生值填充选择列表

Php Laravel-使用派生值填充选择列表,php,laravel-4,Php,Laravel 4,我有一个雄辩的模型(演讲者),它有三列:id、first\u name和last\u name。我要做的是填充select选项,以便id是值,first\u名称。显示的是姓氏 例如,如果我有这些演示者: id, first_name, last_name 1, Billy, Bob 2, Jose, Cuervo 3, Puff, the Magic Dragon 我想要类似于此输出的内容: <select name="presenters"> <option val

我有一个雄辩的模型(演讲者),它有三列:
id
first\u name
last\u name
。我要做的是填充select选项,以便id是值,
first\u名称。显示的是姓氏

例如,如果我有这些演示者:

id, first_name, last_name
1, Billy, Bob
2, Jose, Cuervo
3, Puff, the Magic Dragon
我想要类似于此输出的内容:

<select name="presenters">
    <option value="1">Billy Bob</option>
    <option value="2">Jose Cuervo</option>
    <option value="3">Puff the Magic Dragon</option>
</select>
在Laravel中已经有关于填充模型的选择输入的内容,尽管我还没有找到一个说明如何填充选择输入的内容,其中派生值将显示在每个选项中,而不仅仅是一列中


我可以使用
列表
方法填充select元素,还是需要填充我自己的值/选项文本数组?

您已经提供了答案,请查看

只需调整它,希望它对您有用:

// your eloquent model ...
public static function listPresenters() {
    $ret = [];
    foreach (self::all() as $presenter) {
        $ret[$presenter->id] = "{$presenter->first_name} {$presenter->last_name}";
    }
    return $ret;
}
// your eloquent model ...

你已经提供了答案,看看

只需调整它,希望它对您有用:

// your eloquent model ...
public static function listPresenters() {
    $ret = [];
    foreach (self::all() as $presenter) {
        $ret[$presenter->id] = "{$presenter->first_name} {$presenter->last_name}";
    }
    return $ret;
}
// your eloquent model ...

谢谢我希望避免这种情况,并使用内置的列表方法,但感谢您的反馈。谢谢。我希望避免这种情况,并使用内置列表方法,但感谢您的反馈。谢谢Andreyco,这看起来很有希望。。我会试试这个,看看它是否管用。在这里很管用:)谢谢Andreyco,这看起来很有希望。。我会试试这个,看看它是否管用。在这里很管用:)
Presenter::select('id', DB::raw('CONCAT(first_name, " ", last_name) AS full_name'))->lists('full_name', 'id');