首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在多个表中同时更新内连接数据

如何在多个表中同时更新内连接数据
EN

Stack Overflow用户
提问于 2020-02-26 20:36:20
回答 1查看 57关注 0票数 0

我必须更新3个表数据,这些表数据是由laravel中的inner连接的。在laravel中是否有查询系统可以一次更新这些内容

EN

回答 1

Stack Overflow用户

发布于 2020-02-26 20:45:00

简单的回答是有!下面是一个快速示例Task.php

代码语言:javascript
复制
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

代码语言:javascript
复制
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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60414100

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档