【问题标题】:Add item to select box with an Eloquent collection将项目添加到具有 Eloquent 集合的选择框
【发布时间】:2013-07-12 01:30:22
【问题描述】:

我在表单上有一个选择框,它使用 Eloquent 模型 (Laravel 4) 中列出的数据:

$campuses = Campus::lists('name', 'id');

还有形式:

{{ Form::select('campus_id', $campuses) }}

但是,我希望表单上的第一个选项为 Select...,这样当用户尚未选择选项时,第一个选项不会成为默认选项。

如何在 Eloquent 集合的开头添加另一个选项?

我尝试过类似的方法:

$campuses = array('Select...') . Campus::lists('name', 'id');

【问题讨论】:

    标签: php laravel laravel-4 eloquent


    【解决方案1】:

    你也可以

    $campuses = array('' => 'Select...') + Campus::lists('name', 'id');
    

    我就是这样用的,求和2个数组

    【讨论】:

    • 我认为 lists 方法已被删除以支持pluck()
    【解决方案2】:

    您可以使用 array_merge 函数合并 2 个数组。

    所以,答案是

    $campuses = array_merge(array('Select...'), Campus::lists('name', 'id'));

    【讨论】:

    • 在以后的版本中,我们需要在 ::list() 参数之后添加 ->all() 。因为列表不再返回数组,添加 ->all() 将返回数组,所以我们可以使用 array_merge。
    猜你喜欢
    • 2013-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-28
    相关资源
    最近更新 更多