2016-07-24 31 views
0

でチェーン外部キーの関係を通じてレコードを挿入することが可能です。は、それは私が3つのテーブル/モデルを持っているLaravel 5.2

  1. 従業員は、外部キーのuser_idを持っています。
  2. employee_disabilityには、emp_idの外部キーが含まれます。

次のアクションを実行する方法はあります:

$user->employee()->empdisability()->create(['name'=>$name,'percent'=>$percent]); 

すべてのヘルプは高く評価されます。前もって感謝します。

MODELS

class user extends Authenticatable{ 
    public function employees(){ 
     return $this->hasMany('App\Models\employee','user_id'); 
    } 
} 

class employee extends Model{ 
    public function user(){ 
     return $this->belongsTo('App\Models\user','user_id'); 
    } 

    public function empdisability(){ 
     return $this->hasMany('App\Models\emp_disability','emp_id'); 
    }   
} 

class emp_disability extends Model{ 
    public function employee(){ 
     return $this->belongsTo('App\Models\employee','emp_id'); 
    } 
} 

CONTROLLER

public function storeDisability(Request $request){ 
    $user=Auth::user(); 
    $name=$request->name; $percent=$request->percent; 
    $user->employee()->empdisability()- >create(['name'=>$name,'percent'=>$percent]); 
} 
+0

上の括弧の欠如に気づく、あなたの移行とコントローラを示してくださいすることができなければなりません。 – Francisunoxx

答えて

0

$user->employee()は、従業員の関係のためのクエリビルダを返しますが、何が必要なのインスタンスです。

これは、仕事employee

$user->employee->empdisability()->create(['name'=>$name,'percent'=>$percent]); 
+0

これを試してみて、あなたの努力のために非常に感謝しています。 – jonju

+0

@jonjuどうしたの? – Kaspars

関連する問題