【问题标题】:how populate select box with database in Laravel 5.4?如何在 Laravel 5.4 中使用数据库填充选择框?
【发布时间】:2017-09-13 03:37:57
【问题描述】:

我有一个编辑页面,其中传递了产品的数据,在这个页面上我有一个用于更改类别的选择框,我需要在其中插入在我的数据库中注册的所有类别,但只显示与页面的产品。

选择编辑框视图

<select class="selectpicker" data-live-search="true">
          @foreach($produtos->categoria as $categoria)
          <option data-tokens="{{$categoria->erp_name}}" value="{{$categoria->erp_categoryid}}">{{$categoria->erp_name}}</option>
          @endforeach
          </select>

产品控制器

public function edit($id)
    {
        $produtos = Produtos::find($id);

        return view('functions.edit')->with('produtos', $produtos);
    }

路线

Route::get('/product/update/{id}', 'ProdutosController@edit')->name("product::updateGet");
Route::post('/product/update/{id}', 'ProdutosController@update')->name("product::updatePost");

有什么建议吗?

【问题讨论】:

  • 获取所有类别,将其分配给另一个变量,然后将其传入。然后将其用于选择。
  • 使用$categories = Categoria::all() 获取并传递-&gt;with('categories ', $categories ) 然后在视图中使用它。

标签: php laravel laravel-5


【解决方案1】:

问题是您正在循环浏览该产品的类别,而不是所有类别。这是一个解决方案:

public function edit($id)
{
    $produtos = Produtos::find($id);
    $categories = Category::all();

    return view('functions.edit', compact('produtos', 'categories'));
}

那么在你看来:

<select class="selectpicker" data-live-search="true">
      @foreach($categories as $categoria)
          <option data-tokens="{{$categoria->erp_name}}" value="{{$categoria->erp_categoryid}}">{{$categoria->erp_name}}</option>
      @endforeach
</select> 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-07
    • 1970-01-01
    • 2016-05-27
    • 2015-06-13
    • 2013-11-29
    • 2013-03-04
    相关资源
    最近更新 更多