我正在尝试使用纯粹雄辩的关系将user_id和task_id插入task_comments表中。
这将添加注释,仅添加user_id
public function store(Request $request, Task $task)
{
Auth::user()->comments()->create( $request->all() );
}
这会添加注释,仅添加task_id
public function store(Request $request, Task $task)
{
$task->comment()->create( $request->all() );
}
,但我无法同时添加user_id和task_id。我尝试过
public function store(Request $request, Task $task)
{
Auth::user()->comments()->$task->comment()->create( $request->all() );
}
但这会引发错误...请问任何想法???谢谢。
答案 0 :(得分:0)
public function store(Request $request, Task $task)
{
Auth::user()->comments()->$task->comment()->create( $request->all() );
// ^ using variable seems wrong.
}
我会用它,
$data = $request->all();
$data['user_id'] = Auth::user()->id
$task->comment()->create($data);
答案 1 :(得分:0)
代替这个
public function store(Request $request, Task $task)
{
Auth::user()->comments()->$task->comment()->create( $request->all() );
}
尝试一下,只有在任务和用户之间有联系时,这才起作用
public function store(Request $request, Task $task)
{
$request->user()->task->comment()->create( $request->all() );
}
这些是我的关系
用户模型
public function task()
{
return $this->hasMany('App\Task');
}
public function comments()
{
return $this->hasMany('App\TaskComment');
}
任务模型
public function user()
{
return $this->belongsTo('App\User');
}
public function comment()
{
return $this->hasMany('App\TaskComment');
}
TaskComment模型
public function task()
{
return $this->belongsTo('App\Task');
}
public function user()
{
return $this->belongsTo('App\User');
}