2016-10-28 3 views
0

나는 잠시 동안 어려움을 겪어 왔지만 경험이 거의없는 새로운 개발자입니다. 그래서 마약과 질병을 다루는 프로젝트를 진행하고 있습니다. 다 대다 관계가 존재합니다.Laravel- 피봇 테이블의 여러 확인란 사용

약물 모델

public $timestamps=false; 

public function drug() 
{ 
    return $this->belongsTo('App\Drug'); 
} 

내가 양식을 사용하여 Disease_Drug 피벗 테이블에서 관계를 만들

public $timestamps=false; 

public function disease() 
{ 
    return $this->belongsTo('App\Disease'); 
} 

질병 모델.

<label>Disease</label> 
    <select class="form-inline input-sm " name="disease" id="disease"> 
     @foreach($diseases as $key => $disease) 
      <option value="{{$disease->id}}"> {{$disease->name}}</option> 
     @endforeach 
    </select> 

<label>Drugs</label><br> 
     @foreach($drugs as $key=>$drug) 
      <input type="hidden" name="drug[]" value="0" /> 
      <input class="checkbox-inline" type="checkbox" name="drug[]"value="{{ $drug->id }}" id="{{ $drug->id }}">{{ $drug->name }} <br> 
     @endforeach 

    <button type="submit" class="btn btn-primary">Submit</button> 

form.blade.php 나는

public function form() 
{ 
    $diseases = Disease::all(); 
    $drugs = Drug::all(); 

    return view('admin.form') 
     ->with('diseases', $diseases) 
     ->with('drugs', $drugs); 

} 
public function store(Request $request) 
{ 
    $diseases = $request->get('diseases.ids'); 
    $drugs = $request->get('drugs.id', []); // Empty array by default if no checkbox checked. 
    $diseases->drugs()->sync($request->input('drugs', [])); 
} 

나는 데이터베이스에 결과를 저장할 수 없습니다 오전 disease_drug 컨트롤러를 가지고있다. 나는 이것에 정말로 우둔해 친절하게 도와 줘. 약물과 질병 사이의 관계가 많은 대부분의 경우

답변

0

다음 관련 기능이 있어야합니다 같은 :

약물 모델

public function disease() 
{ 
    return $this->belongsToMany('App\Disease'); 
} 

질병 모델

public function drug() 
{ 
    return $this->belongsToMany('App\Drug'); 
} 

대신 belongsTo() 기능을 사용하는 .

관련 문제