2016-04-10 21 views
1

Lassen Sie mich Situation erklären, Person sucht durch Fähigkeiten und beim Anklicken zeigt Liste der Handymans mit dieser Fähigkeit, wenn der Benutzer auf einen von ihnen klickt, werden die vollständigen Details angezeigt. Der Benutzer klickt dann auf den Job-Link und wird auf eine Seite mit Jobs zusammen mit Checkbox geleitet. Wenn der gewünschte Job ausgewählt ist und die Schaltfläche "Senden" gedrückt wird, möchte ich eine Datenbank den Wert "job_id" in der "handyman" -Datenbank aktualisieren. Wie könnte das gemacht werden?Aktualisieren der Datenbank mit 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]); 
} 

Wenn ein bestimmter Code benötigt wird, informieren Sie mich bitte

+0

Lese über eloquent https://laravel.com/docs/5.2/eloquent –

+0

Ja, ich habe getan, sind Tabellen verbunden mit beredten aber immer noch ein wenig verwirrt, wie man diese Arbeit macht –

+0

Machen was Arbeit? Der Aktualisierungsprozess? – Frisbetarian

Antwort

1

Sie bei Eloquent Beziehung aussehen sollte. Handymen hat viele Job

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

In Ihrem Controller

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

    // $request->get('jobs') = [1, 6, 7, etc...] 
    $handymen->saveMany($request->get('jobs')); 
    return ...; 
} 
Verwandte Themen