表单选择框{!! Form :: select()!!} Laravel

时间:2019-06-14 03:44:17

标签: php laravel forms laravel-5.8

我在视图中使用Laravel Collective Form构建器,并且从这样的数据库表中填充此选择框

我遇到一个问题,我的值不匹配,下拉菜单也将值作为数组提供给我...

这是我的 PostsController 中的内容:-

public function edit(Post $post)
{
    $categories = Category::all()->pluck('title', 'id')->toArray();

    return view('posts.edit')->withPost($post)->withCategories($categories);
}

这是我的观点 edit.blade.php :-

{{ Form::label('category_id', 'Category :')}}
{!! Form::select('category_id', $categories, null, ['class' => 'form-control']) !!}

所以我需要什么帮助?

这是我正在谈论的价值问题: enter image description here

这是我正在谈论的数组问题: enter image description here

3 个答案:

答案 0 :(得分:1)

无需使用toArray() pluck方法即可自动创建数组。 试试这个

$categories = Category::pluck('title', 'id');

答案 1 :(得分:0)

首先,您的代码似乎不合适。

    $categories = Category::all()->pluck('title', 'id')->toArray();

应该是

    $categories = Category::pluck('title', 'id')->toArray();

答案 2 :(得分:0)

首先更新您的控制器功能。我认为这会有所帮助:-

public function edit(Post $post)
{
    $categories = Category::pluck('title', 'id')->toArray();

    return view('posts.edit', [
            'post' => $post,
            'categories' => $categories
        ]);
}

尝试此代码,让我知道需要帮助。