CRUD更新并选择默认值Laravel 5.5

时间:2018-04-27 11:27:09

标签: forms crud laravel-5.5

我创建了一个CRUD,我想修改edit方法中的值。

public function edit($id)
{
    $valuechains = Valuechain::with('langs')->where('id','=', $id)->get();
    $sectors = Sector::select('sectors.id', 'lang_sector.sectname')
        ->join('lang_sector', 'sectors.id', '=', 'lang_sector.sector_id')
        ->join('langs', 'lang_sector.lang_id', '=', 'langs.id')
        ->join('valuechains', 'sectors.id', '=', 'valuechains.sector_id')
        ->where([
            ['langs.ismainlanguage', '=', 1],
            ['valuechains.id', '=', $id]
        ])->get();

    $sectorsList = Sector::select('sectors.id', 'lang_sector.sectname')
        ->join('lang_sector', 'sectors.id', '=', 'lang_sector.sector_id')
        ->join('langs', 'lang_sector.lang_id', '=', 'langs.id')
        ->join('valuechains', 'sectors.id', '=', 'valuechains.sector_id')
        ->where([
            ['langs.ismainlanguage', '=', 1],
        ])->get();

    $sector_selector = array();
    foreach ($sectorsList as $list) {
        $sector_selector[$list->id] = $list->sectname;
    }

    return view('admin.pages.maps.valuechains.edit', compact('valuechains', 'sectors', 'sector_selector', 'id'));
}

在我看来,我希望用户修改扇区值:

<fieldset>
    <legend>Industrial sector</legend>
    <div class="form-group m-form__group">
        {{ Form::label( 'Sector name' ) }}
        {{Form::select('sector', $sector_selector, array_values($sector_selector)[0],  [ 'class' => 'form-control m-input' ] )}}
    </div>
</fieldset>

我的问题如下。我希望我的下拉列表默认选择在创建过程中定义的扇区... 例如,如果创建方法中定义的行业是ICT和生物技术,如果在创建方法中定义了行业生物技术,我想展示ICT ......

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

也许这会奏效:

<fieldset>
    <legend>Industrial sector</legend>
    <div class="form-group m-form__group">
        {{ Form::label( 'Sector name') }}
        {{ Form::select('sector', $sector_selector, $sector_selector[0], ['class' => 'form-control m-input']) }}
    </div>
</fieldset>

谢谢,