2016-04-25 91 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) !!}