前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >laravel insert 、save、update、create区别(总结二)

laravel insert 、save、update、create区别(总结二)

作者头像
全栈程序员站长
发布2022-07-08 12:52:46
发布2022-07-08 12:52:46
1.9K00
代码可运行
举报
运行总次数:0
代码可运行

1、insert:插入数据时,需要维护 created_at 和 updated_at字段,

2、save:无论插入或者更新,会自动维护,无需手动操作

代码语言:javascript
代码运行次数:0
运行
复制
//插入:
public function store(Request $request)
    {
        $flight = new Flight;

        $flight->name = $request->name;

        $flight->save();
    }

//更新:

$flight = App\Flight::find(1);

$flight->name = 'New Flight Name';

$flight->save();
代码语言:javascript
代码运行次数:0
运行
复制
<strong>格式: Eloquent实例->save();</strong>

插入操作例子中,HTTP 请求的参数 name 赋值给了 App\Flight 模型实例的 name 属性。调用 save 方法,一条记录就会插入数据库。created_atupdated_at 时间戳随着 save 方法的调用,会自动维护,无需手动操作

save 方法也可用于模型更新。更新模型时,需要检索到它,然后设置模型属性,再调用 save 方法。同样地,updated_at 时间戳自动更新,无需手动操作

3.update:更新操作,自动维护 updated_at字段

也可一并更新查询到的多个模型。这个例子中,所有 activedestinationSan Diego 的航班都被更新为延误:

代码语言:javascript
代码运行次数:0
运行
复制
App\Flight::where('active', 1)
          ->where('destination', 'San Diego')
          ->update(['delayed' => 1]);

update 方法接受一个字段为键、更新数据为值的数组

4.create 自动维护 created_at 和 updated_at两个字段

除了 savesaveMany 方法外,你还可以使用 create 方法。它接受一个属性数组,同时会创建模型并插入到数据库中。 还有, save 方法和 create 方法的不同之处在于, save 方法接受一个完整的 Eloquent 模型实例,而 create 则接受普通的 PHP 数组:

代码语言:javascript
代码运行次数:0
运行
复制
$post = App\Post::find(1);

$comment = $post->comments()->create([
    'message' => 'A new comment.',
]);

{tip} 在使用 create 方法前,请务必确保查看过本文档的 批量赋值 章节。

格式:create(【‘字段’=>值,组成的数组】);

参考连接: https://learnku.com/docs/laravel/5.6/eloquent-relationships/1404#3d967c

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/112317.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年11月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档