2016-07-24 148 views
0

链外键关系插入记录我有三个表/型号:用户员工employee_disability是否有可能通过Laravel 5.2

  1. 员工有外键USER_ID
  2. employee_disability包含emp_id为外键。

是否有执行以下操作的方式:

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

任何帮助表示赞赏。先谢谢你。

模型

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'); 
    } 
} 

控制器

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