What#39;s difference between Laravel Model functions quot;createquot; and quot;insertquot;?(Laravel 模型函数“create和“create有什么区别?和“插入?)
问题描述
Laravel 模型允许使用两个函数将值插入到数据库表中.他们是
Laravel Model allows two functions for inserting the values to the database table. They are
创建:User::create(['id'=>1,'name'=>'stack']);
插入:User::insert(['id'=>2,'name'=>'overflow']);
我发现它们执行类似的操作.它们有什么区别?
I found they perform similar operations. What's difference between them?
推荐答案
insert() :
如果你使用 insert() 方法,你不能默认 created_at 和 updated_at 数据库列它将为空
If you using insert() method you can't default created_at and updated_at database column it will be null
DefaultUser::insert(['username' => $request->username, 'city' => $request->city, 'profile_image' => $request->profile_image]);
<小时>
create() :当我们使用 create 方法时,您必须在 fillable fields
create() : when we use create method you must define this model in fillable fields
添加模型
protected $fillable = ['username','city', 'profile_image'];
添加控制器
DefaultUser::create(['username' => $request->username, 'city' => $request->city, 'profile_image' => $request->profile_image]);
那么我们就可以使用create方法而没有**mass assignment error **基本上在这里,表定义的字段在您的模型中受到保护
then we can use create method without **mass assignment error ** basically here , table defined fields are protected in your model
您应该定义要使质量可分配的模型属性.您可以使用模型上的 $fillable 属性来执行此操作
这篇关于Laravel 模型函数“create"和“create"有什么区别?和“插入"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Laravel 模型函数“create"和“create"有什么区别?和“插入"?
基础教程推荐
- HTTP 与 FTP 上传 2021-01-01
- Doctrine 2 - 在多对多关系中记录更改 2022-01-01
- 在 CakePHP 2.0 中使用 Html Helper 时未定义的变量 2021-01-01
- PHP 守护进程/worker 环境 2022-01-01
- 如何在 Symfony 和 Doctrine 中实现多对多和一对多? 2022-01-01
- 如何在 XAMPP 上启用 mysqli? 2021-01-01
- 使用 PDO 转义列名 2021-01-01
- 找不到类“AppHttpControllersDB",我也无法使用新模型 2022-01-01
- phpmyadmin 错误“#1062 - 密钥 1 的重复条目‘1’" 2022-01-01
- 在 yii2 中迁移时出现异常“找不到驱动程序" 2022-01-01