2016-05-25 9 views
0

so machen i laravel Form für updateLaravel Aktualisierung kann nicht den richtigen Wert

Index.blade

<div class="col-sm-12"> 
    <div class="formrow row"> 
    <div class="form-group"> 
     <div class="divlabel col-sm-2"> 
     <label>Kode Program Studi:</label> 
     <span class="required">*</span> 
    </div> 
    <div class="divinput col-sm-8"> 
     <select id="id" data-plugin-selectTwo class="form-control populate placeholder" title="kode program studi harus diisi" name='id' required data-plugin-selecTwo> 
     <option value="">-PILIH NAMA USER-</option> 
     @foreach ($users as $user) 
      <option class="form-control" value = '{{$user->id}}'>{{$user->id.' | '.$user->name}}</option> 
     @endforeach 
     <label class="error" for="id"></label> 
    </select> 
    </div> 
    </div> 

    {!! Form::open(['url' => 'master/hakakses/'.$user->id,'method' => 'PATCH','class'=>'update']) !!} 
    <!-- {!! Form::model($user,['route'=>['master.hakakses.update', $user->id],'method' => 'PATCH','class'=>'update']) !!} --> 


    <div class="form-group"> 
    <div class="divlabel col-sm-2"> 
    <label>Kode Program Studi:</label> 
    <span class="required">*</span> 
    </div> 
    <div class="divinput col-sm-8"> 
    <select id="role" data-plugin-selectTwo class="form-control populate placeholder" title="kode program studi harus diisi" name='role_id' required data-plugin-selecTwo> 
     <option value="">-PILIH HAK AKSES-</option> 
     @foreach ($roles as $role) 
     <option class="form-control" value = '{{$role->id}}'>{{$role->id.' | '.$role->role_akses.' | '.$role->role_name}}</option> 
     @endforeach 
     <label class="error" for="role"></label> 
    </select> 
    </div> 
</div> 
</div> 
<div class="col-sm-offset-4 col-sm-50"> 
    <input type="submit" value="Ubah" name = 'simpan' class = 'btn btn-primary'> 
    <td><a href="{{ url('master/hakakses')}}" class="btn btn-primary">Kembali</a></td> 
</div> 
</div> 

    {!! Form::close() !!} 

Controller:

public function index() 
    { 
     $data=new HakAkses; 

     $users= $data->ListUser(); 
     $roles= $data->ListRole(); 
     return view ('Master.HakAkses.index',compact ('users','roles')); 
    } 
    public function update(Request $request, $id) 
    { 

return $id; 

    } 

Modell:

public static function ListUser() 
    { 
     $table = DB::select(DB::raw("SELECT * FROM users")); 
     return $table; 
    } 
    public static function ListRole() 
    { 
     $table = DB::select(DB::raw("SELECT * FROM m_role")); 
     return $table; 
    } 

Das Problem ist, ich nicht den Wert von {{$role->id}} bekommen kann, wenn ich versuche $id zurückzukehren, ist der Wert die letzte Eingabe von id in der Datenbank. Ich denke, dass das Problem in den FORM ist:

{!! Form::open(['url' => 'master/hakakses/'.$user->id,'method' => 'PATCH','class'=>'update']) !!} 

Kann jemand mir bitte helfen?

+0

zeigen Sie Ihre Route Datei – DsRaj

+0

Ich benutze Ressource Route, ich denke, die Route ist in Ordnung –

Antwort

0

ich das Problem sehe, ist, dass Sie vorbei hier:

{!! Form::open(['url' => 'master/hakakses/'.$user->id,'method' => 'PATCH','class'=>'update']) !!} 

die $user->id aber Sie wollen in Ihrem Controller bekommen {{$role->id}}

So ist die Solvatation ist in Ihrem Controller:

public function update(Request $request, $id) 
{ 
    // $id is a user's id 

    $roleId = $request->input('role_id'); 
} 
+0

Nein, das Problem ist, ich kann nicht th Der ID-Wert aus dem Dropdown-Menü. $ roleId = $ Anfrage-> Eingabe ('role_id'); wird nicht helfen –

+0

ich tippe return $ id; also als ich kann testen, welchen Wert die $ id bekommen –

+0

aber '$ request-> input ('role_id')' ist ein Wert aus dem Dropdown. Können Sie Ihre Routing-Datei einfügen –

Verwandte Themen