我必须更新通过 laravel 中的内部连接连接的 3 个表数据。是否有任何查询系统可以在 laravel 中更新一次
1 回答
1
简单的答案是的,有!这是一个快速示例 Task.php
class Task extends Model
{
protected $fillable =
[
'user_id',
];
public function user() {
return $this->belongsTo('App\User');
}
public function engagements()
{
return $this->belongsToMany('App\Engagement', 'engagement_task', 'task_id', 'engagement_id');
}
}
任务控制器.php
public function update(Request $request, Task $task)
{
if ($task->user_id !== auth()->user()->id) {
return response()->json('Unauthorized', 401);
}
$data = $request->validate([
'user_id' => 'required|integer',
]);
$task->update($data);
$status = $request->validate([
'status' => 'required|string'
]);
$task->engagements()->update($status);
return response($task, 200);
}
来源:https ://laracasts.com/discuss/channels/laravel/how-to-update-multiple-tables-at-the-same-time
于 2020-02-26T12:45:00.477 回答