首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

$fillable不支持Laravel 8 firstOrCreate

在Laravel 8中,$fillable属性不再支持firstOrCreate方法。$fillable属性是用于指定模型中可以批量赋值的字段,而firstOrCreate方法是用于根据给定条件查找第一个模型实例,如果找不到则创建一个新的实例。

在Laravel 8中,为了提高安全性,默认情况下,模型的$fillable属性为空,即不允许批量赋值。如果要使用firstOrCreate方法,需要使用$guarded属性或者使用fillable方法来指定可批量赋值的字段。

$guarded属性是用于指定不允许批量赋值的字段,可以将需要保护的字段名添加到$guarded属性中。例如,如果要保护模型的"id"字段,可以在模型中添加以下代码:

代码语言:txt
复制
protected $guarded = ['id'];

另一种方法是使用fillable方法来指定可批量赋值的字段。fillable方法接受一个数组参数,包含允许批量赋值的字段名。例如,如果要允许批量赋值模型的"name"和"email"字段,可以在模型中添加以下代码:

代码语言:txt
复制
protected $fillable = ['name', 'email'];

推荐的腾讯云相关产品和产品介绍链接地址:

  • 云服务器(CVM):提供可扩展的计算容量,支持多种操作系统,适用于各种应用场景。了解更多:云服务器
  • 云数据库 MySQL 版(CDB):提供高可用、可扩展的 MySQL 数据库服务,支持自动备份、容灾、性能优化等功能。了解更多:云数据库 MySQL 版
  • 云原生容器服务(TKE):基于 Kubernetes 的容器服务,提供高可用、弹性伸缩的容器集群管理能力,简化应用部署和管理。了解更多:云原生容器服务

请注意,以上推荐的产品和链接仅为示例,具体选择和推荐应根据实际需求和情况进行评估。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

laravel5.6 框架操作数据 Eloquent ORM用法示例

本文实例讲述了laravel5.6 框架操作数据 Eloquent ORM用法。分享给大家供大家参考,具体如下: 建立Users模型 <?...{ //指定表名 protected $table="users"; //指定id protected $primaryKey="id"; //指定允许批量的字段 protected $fillable...age = 100; $data- save(); //create() 多增 $ret=Users::create([ 'name'= 'admin_b', 'age'= 200 ]); //firstOrCreate...()以属性查询数据 如果没有 新建数据 $ret=Users::firstOrCreate([ 'name'= 'admin_c', 'age'= 300 ]); //firstOrNew() 以属性查询数据...操作数据查询构建器 更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql

2.1K30
  • 跟我一起学Laravel-EloquentORM基础部分

    App\Flight::findOrFail(1); $model = App\Flight::where('legs', '>', 100)->firstOrFail(); 如果没有捕获这个异常的话,laravel...指定$fillable属性的目的是该属性指定的字段可以通过create方法插入,其它的字段将被过滤掉,类似于白名单,而$guarded则相反,类似于黑名单。...protected $fillable = ['name']; // OR protected $guarded = ['price']; 执行create操作就只有白名单或者黑名单之外的字段可以更新了...firstOrCreate方法用来使用给定的列值对查询记录,如果查不到则插入新的。...fristOrNew与firstOrCreate类似,不同在于如果不存在,它会返回一个新的模型对象,不过该模型是未经过持久化的,需要手动调用save方法持久化到数据库。

    84620

    Laravel5.7 Eloquent ORM快速入门详解

    所以,你应该在模型中定义哪些属性是可以进行赋值的,使用模型上的 $fillable 属性即可实现。例如,我们设置 Flight 模型上的 name 属性可以被赋值: <?...* * @var array */ protected $fillable = ['name']; } 设置完可以被赋值的属性之后,我们就可以使用 create 方法在数据库中插入一条新的记录...* * @var array */ protected $guarded = []; 其它创建方法 firstOrCreate/firstOrNew 还有其它两种可以用来创建模型的方法:firstOrCreate...firstOrCreate 方法先尝试通过给定列/值对在数据库中查找记录,如果没有找到的话则通过给定属性创建一个新的记录。...firstOrNew 方法和 firstOrCreate 方法一样先尝试在数据库中查找匹配的记录,如果没有找到,则返回一个新的模型实例。

    15.1K41

    Laravel基础

    一、Laravel核心目录文件介绍 app:程序的核心代码和业务逻辑代码,其中的Http目录是我们业务逻辑的存放点 bootstrap:包含框架启动的和自动加载文件 config:包含所有程序中的配置文件..., ['abcd']); laraevl内置函数dd,可人性化的打印数组:dd($result); 3.2 数据库操作 - 查询构造器 3.2.1 查询构造器简介 Laravel 查询构造器(query...time(); } //将数据库里的时间戳取出时不被转换为日期 protected function asDatetime($val) { return $val; } protected $fillable...student = new Student(); $result = $student -> create([ 'name' => 'create', 'age' => 30 ]); //firstOrCreate...查找数据并返回,如果不存在则插入该条数据并返回 $result = Student::firstOrCreate([ 'name' => 'aj', 'age' => 32 ]); //firstOrNew

    7.8K30

    Laravel系列8】走出 Laravel 的世界

    走出 Laravel 的世界 还记得这个系列的第一篇文章是什么吗?当时我们写的是《进入Laravel的世界》。照理说,学习完了,日常应用更得心应手了,我们为啥又要走出呢?...学习这条路是没有尽头的,Laravel 的学习结束了,不少小伙伴应该也把它应用在日常业务开发中了。下一个起点又会是什么呢?...我们就直接去学习 Swoole 中的应用功能,以及一个和 Laravel 非常像的 Swoole 框架:Hyperf 。...现在的 PHP8 引入了 JIT ,配合 OPCache ,再加上多台机器分布式部署的话,其实性能也不差。...你可以在这些框架中寻找到 Laravel 中许多实现的影子。如果你本身就是在用 Laravel ,去拓展一下眼界也没什么不好。不说谁抄谁,思想都是开源的,这点你必须承认。

    1.2K30

    laravel 模型Eloquent ORM 添加编辑删除

    因为在模型默认不允许进行批量赋值需要先定义允许 create 方法插入到数据库的字段,就是给 $fillable 属性定义允许赋值的字段 up 先在模型中定义 $fillable 属性 /**...* * @var array */ protected $guarded = []; 需要注意的是 $fillable 和 $guarded 只能定义其中的一个,不能同时存在 ?...当时我希望能有一个恢复删除的功能比如说回收站,laravel 的模型为我们提供了很方便的软删除功能 要启用软删除首先数据表需要有 deleted_at 字段 之前玩迁移的时候简单的说了下创建迁移的时候调用...Laravel 的 数据库迁移 有创建这个字段的方法 现在,当你在模型实例上使用 delete 方法, 当前日期时间会写入 deleted_at 字段。...id等于8的数据被彻底删除啦 到现在增删改查 up 就都了解了

    1.7K21

    Laravel5.1 框架模型创建与使用方法实例分析

    本文实例讲述了Laravel5.1 框架模型创建与使用方法。...当我们用到批量创建和批量修改时 必须声明黑名单或白名单,在白名单中的属性是可以填充的属性,在黑名单中的属性是不允许被填充的属性: class Article extends Model { protected $fillable...方法来生成一个model并返回这个新插入的model,在你使用create前必须检查model中是否声明了黑名单或白名单: class Article extends Model { protected $fillable...create(['title'= 'Two', 'body'= 'Test Create Model', 'comment_count'= 10]); } ↑ 这是批量创建模型,有个细节哈 我们在fillable...更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及

    2K71
    领券