2016-04-10 16 views
1

状況を説明すると、人はスキルを検索しています。クリックすると、そのスキルのハンディーマンのリストが表示されます。ユーザーがそのスキルをクリックすると、詳細が表示されます。ユーザーはジョブリンクの割り当てをクリックし、チェックボックスと一緒にジョブがあるページに移動し、希望のジョブが選択され、ボタンをクリックすると、データベースは "ハンディーメン"データベースの "job_id"値を更新します。どうすればそれができますか?特定のコードが必要な場合laravelを使ってデータベースを更新する

@extends('layouts.master') 

@section('title', 'Assign Job') 

@section('content') 

@section('content') 

<form action="{{url('assignjob')}}" method="POST"> 
    {{ csrf_field() }} 
    @foreach ($jobs as $job) 
     <div> 
      <label>{{$job->name}}</label> 
      <input type='checkbox' value='{{$job->id}}' name='jobs[]'/> 
     </div> 
    @endforeach 
    <input type="submit" name="submitBtn" value="Assign Job"> 
</form> 

@endsection 


function search() 
{ 
    $skills = Skill::all(); 
    return view('layouts/search',['skills' => $skills]); 
} 
function details($skillId) 
{ 
$skill = Skill::find($skillId); 
$handymen = $skill->handymen; 
return view('layouts/details', ['skill' => $skill,'handymen' => $handymen]); 
} 
function assignJob($handymanId) 
{ 
    $assignJob = Hadnyman::find($handymanId); 
    $jobs = Job::all(); 
    return view('layouts/assignjob',['jobs' => $jobs]); 
} 
function jobassign(Request $request) 
{ 
    return redirect('assignjob'); 
} 
function skilledHandyman($handymanId) 
{ 
    $skilledHandyman = Handyman::find($handymanId); 
    return view('layouts/skilledHandyman', ['skilledHandyman' => $skilledHandyman]); 
} 

、あなたが雄弁の関係を見てみなければならない私は

+0

雄弁についての記事を読むhttps://laravel.com/docs/5.2/eloquent –

+0

はい、私は雄弁使用してテーブルが接続されている、ことを行っていますしかし、まだその仕事をする方法についてちょっと混乱した –

+0

何がうまくいくのですか?更新プロセスは? – Frisbetarian

答えて

1

をお知らせください。 便利屋あなたのコントローラでは、多くの仕事

class Handymen extends Model { 
    ... 
    public function jobs() { 
    return $this->hasMany(App\Job::class); 
    } 
} 

を持って

function assignJob(Request $request, $id) 
{ 
    $handymen = Handyman::findOrFail($id); 

    // $request->get('jobs') = [1, 6, 7, etc...] 
    $handymen->saveMany($request->get('jobs')); 
    return ...; 
} 
関連する問題