2016-04-25 88 views
1

選定值我有一個編輯帳戶頁面,我想把值在數據庫中選擇:Laravel - 在形式上

@foreach($all_orga as $val) 
    @if($val->id_organisme==13) 
     <OPTION selected value="{{$val->id_organisme}}">{{$val->nom}}</OPTION> 
    @else 
     <OPTION value="{{$val->id_organisme}}">{{$val->nom}}</OPTION> 
    @endif 
@endforeach 

這工作得很好,因爲它顯示在列表中,但沒有什麼是「選擇」 ,所以我編輯它使用$ compte-> id_organisme,這是在我的測試等於3:

@foreach($all_orga as $val) 
    @if($val->id_organisme == $compte->id_organisme) 
     <OPTION selected value="{{$val->id_organisme}}">{{$val->nom}}</OPTION> 
    @else 
     <OPTION value="{{$val->id_organisme}}">{{$val->nom}}</OPTION> 
    @endif 
@endforeach 

它仍然顯示列表中,但再次,沒有「選擇」。

信息:

dd($all_orga) 

    EQUALS 

array:12 [▼ 
    0 => {#566 ▼ 
    +"id_organisme": 2 
    +"nom": "Orga 1" 
    } 
    1 => {#515 ▶} 
    2 => {#565 ▶} 
    3 => {#564 ▶} 
    4 => {#563 ▶} 
    5 => {#562 ▶} 
    6 => {#561 ▶} 
    7 => {#560 ▶} 
    8 => {#559 ▶} 
    9 => {#558 ▶} 
    10 => {#557 ▶} 
    11 => {#556 ▶} 
] 

dd($compte->id_organisme) 

    EQUALS 

3 

這裏,3值似乎選擇:

@foreach($all_orga as $val) 
    @if($val->id_organisme == $compte->id_organisme) 
     <OPTION selected value="{{$val->id_organisme}}">{{$val->nom}} {{$val->id_organisme}} {{$compte->id_organisme}}</OPTION> 
    @else 
     <OPTION value="{{$val->id_organisme}}">{{$val->nom}} {{$val->id_organisme}}</OPTION> 

     @endif 
    @endforeach 

GIVES 

Orga1 2 
Orga2 3 3 (selected) 
Orga3 4 
Orga4 5 
... 
+0

你會就這一問題使用jquery。 – aldrin27

+0

我已經在這個頁面上有一個列表,並且所選的作品完美。 –

+0

所以你想顯示所有選中的數據? – aldrin27

回答

0

我建議你讓Laravel完成重任。儘管它不是核心的一部分,但Laravel有一個很好的表單構建器,它被移植到一個單獨的項目中:Laravel Collective。而且還有很多其他好用的功能(例如Form model binding)。

此外,您可能想要開始使用collections而不是數組。如果我會寫這Laravel我會做一些沿着這些路線:

/** 
* Edit account action 
* 
* @file YourController 
*/ 
public function editAccountAction() { 
    return view('edit', [ 
     'compte' => $compte, 
     'all_orga' => collect($all_orga), 
    ]); 
} 

而在你的看法:

// use the collection's pluck method to build the array of options for the dropdown 
{!! Form::select('name', $all_orga->pluck('id_organisme', 'nom'), $compte->id_organisme) !!}