簡體   English   中英

Laravel-Form :: select顯示名稱作為Option Value

[英]Laravel - Form::select show name as Option Value

我有聯賽的數據庫,我需要在不同聯賽的形式內提供下拉列表...

我已經完成了這項工作,但“選項值”顯示為ID號,我需要將其顯示為“聯賽名”字段...

調節器

public function getEdit($id = null)
{

    try {
        // Get the group information
        $tip = Tips::find($id);

        $league = Leagues::lists('league_name', 'id');

    } catch (TipNotFoundException $e) {
        // Redirect to the groups management page
        return Redirect::route('tips')->with('error', Lang::get('tips/message.group_not_found', compact('id')));
    }

    // Show the page
    return View('admin/tips/edit', compact('tip','league'));
}

查看刀片

<div class="form-group">
 <label for="league" class="col-sm-3 control-label">League</label>
   <div class="col-sm-9">
      {!! Form::select('league', $league, Input::old('league'), ['class' => 'form-control required', 'id' => 'league', 'placeholder' => 'Select League']) !!}
   </div>
</div>

它輸出為...

<select class="form-control required" id="league" name="league">
 <option selected="selected" value="">Select League</option>
 <option value="1">FIFA World Cup</option>
 <option value="2">FIFA Women's World Cup</option>
 <option value="3">FIFA Confederations Cup</option>
 <option value="4">Summer Olympic Games (FIFA unofficial)</option>

我希望它輸出為...

<select class="form-control required" id="league" name="league">
 <option selected="selected" value="">Select League</option>
 <option value="FIFA World Cup">FIFA World Cup</option>
 <option value="FIFA Women's World Cup">FIFA Women's World Cup</option>
 <option value="FIFA Confederations Cup">FIFA Confederations Cup</option>
 <option value="Summer Olympic Games (FIFA unofficial)">Summer Olympic Games (FIFA unofficial)</option>

lists方法使用指定的鍵和值構建一個數組。

array lists ( string $values_column [, string $keys_column = null ] );

在您的示例中,您將鍵顯式設置為每一行的id列,這就是為什么要獲取數字值的原因。

只需將對lists的調用更改為使用league_name作為鍵和值,即可獲得所需的結果。

$league = Leagues::lists('league_name', 'league_name');

關於您對檢索此字段的現有選擇的意見/問題:

利用Input::old()的第二個參數(或更短的形式為helper old() ,如果先前提交的數據不存在,則可以指定一個值)。

old('league', $value_if_old_isnt_set);

這將在頁面加載時使用$value_if_old_isnt_set預先選擇該字段,然后使用表單提交的值填充該字段。

已在評論中回答,但在此處已接受,它會從未回答的列表中消失

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM