Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在laravel中同时更新内部联接的多个表数据_Php_Mysql_Laravel_Update Inner Join - Fatal编程技术网

Php 如何在laravel中同时更新内部联接的多个表数据

Php 如何在laravel中同时更新内部联接的多个表数据,php,mysql,laravel,update-inner-join,Php,Mysql,Laravel,Update Inner Join,我必须更新3个表数据,这些数据在laravel中由内部连接连接。是否有任何查询系统可以在laravel中一次性更新这些信息?简单回答是的!这里有一个简单的例子 Task.php class Task extends Model { protected $fillable = [ 'user_id', ]; public function user() { return $this->belongsTo('App\User')

我必须更新3个表数据,这些数据在laravel中由内部连接连接。是否有任何查询系统可以在laravel中一次性更新这些信息?简单回答是的!这里有一个简单的例子 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');
    }
}
TasksController.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);
    }

来源:

请发布数据库结构、引用“3表数据连接”的代码以及您迄今为止的尝试