laravel 解决Eloquent ORM的save方法无法插入数据的问题
学习laravel中:
今天在测试使用Eloquent ORM将数据使用 save()方法插入到mysql中时,出现了错误,如图所示:
在网上查阅资料后找到了原因:
使用save方法新增数据:
laravel会默认维护 created_at , updated_at 两个字段,这两个字段都是存储时间戳,整型11位的,因此使用时需要在数据库添加这两个字段。如果不需要这个功能,只需要在模型里加一个属性:public $timestamps=false; 以及一个方法,可以将当前时间戳存到数据库
protected function getDateFormat(){ return time(); }
这样就不需要那两个字段了。
修改后错误消失,正常输出:
控制器中函数代码如下:
//使用表模型新增数据 public function orm2(){ $stu = new Student(); //表的模型实例化 $stu->name='小黑'; //给模型的属性赋值 $stu->password='222333'; $flag = $stu->save(); //save方法插入数据,返回插入是否成功的boolean值 var_dump($flag); //打印$flag的内容 }
以上这篇laravel 解决Eloquent ORM的save方法无法插入数据的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Laravel ORM 数据model操作教程
随机查询 $data=Move::where('release',1) ->where('is_hot',1) ->where('is_status',1) ->orderBy(\DB::raw('RAND()')) ->take(4) ->get(); 1.ORM操作需要创建对应的model class User extends Eloquent 2.有两种方式使用数据操作对象 a. 使用new关键字创建对象后执行对象的方法 b. 直接调用static方法(实际并发静态方法
-
Laravel Eloquent ORM 实现查询表中指定的字段
在使用Laravel ORM的Model方法find, get, first方法获取数据对象时返回的数据对象的attributes属性数组里会包含数据表中所有的字段对应的键值关系, 那么如何在ORM查询时只返回数据表中指定字段的数据呢?很多时候,文档上没有写明的用法需要我们去看源码来探究的,下面我们就来看一下这三个方法的实现. 由于ORM依赖了QueryBuilder来实现查询, 在QueryBuilder的源码里通过查看get,first方法的实现可以到,他们都可以接收一个数组参数来指定要查询
-
使用laravel的Eloquent模型如何获取数据库的指定列
使用Laravel的ORM--Eloquent时,时常遇到的一个操作是取模型中的其中一些属性,对应的就是在数据库中取表的特定列. 如果使用DB门面写查询构造器,那只需要链式调用select()方法即可: $users = DB::table('users')->select('name', 'email as user_email')->get(); 使用Eloquent的话,有两种方式: 使用select() $users = User::select(['name'])->get()
-
Laravel Eloquent ORM 多条件查询的例子
一.需求: 在数据搜索时最常见的就是调用同一个方法查询,而查询的字段却可能是其中一个或其中的几个字段一起组合查询,例如:对列表的搜索,基本上都是几个字段随意组合搜索.那么在model里就需要判断有那个字段组合,怎么组合. 网上找了很久,Laravel群里也问了几个,都说没有写过,于是自己写个吧.话不多说,见代码: function findByParam($param = array()) { $select = new Customer(); if (isset($param['name'])
-
在laravel中实现ORM模型使用第二个数据库设置
DB类连接第二个数据库的方法 在laravel中如果使用DB类进行第二个数据库的链接我们只需要设置config/database.php中添加一个数据库设置,如: 'mysql_branch' => [ 'driver' => 'mysql', 'host' => '192.168.2.56', 'port' => '3306', 'database' => 'test', 'username' => 'root', 'password' => 'root', '
-
laravel 解决Eloquent ORM的save方法无法插入数据的问题
学习laravel中: 今天在测试使用Eloquent ORM将数据使用 save()方法插入到mysql中时,出现了错误,如图所示: 在网上查阅资料后找到了原因: 使用save方法新增数据: laravel会默认维护 created_at , updated_at 两个字段,这两个字段都是存储时间戳,整型11位的,因此使用时需要在数据库添加这两个字段.如果不需要这个功能,只需要在模型里加一个属性:public $timestamps=false; 以及一个方法,可以将当前时间戳存到数据库 pr
-
Laravel框架Eloquent ORM删除数据操作示例
本文实例讲述了Laravel框架Eloquent ORM删除数据操作.分享给大家供大家参考,具体如下: 这篇文章,以下三个知识点希望大家能够掌握 如下: 通过模型删除 通过主键值删除 通过指定条件删除 NO.1模型删除 老样子,我们先新建一个方法,然后输入代码. namespace App\Http\Controllers; use App\Student; use Illuminate\Support\Facades\DB; class StudentController extends Co
-
Laravel框架Eloquent ORM新增数据、自定义时间戳及批量赋值用法详解
本文实例讲述了Laravel框架Eloquent ORM新增数据.自定义时间戳及批量赋值用法.分享给大家供大家参考,具体如下: 好了,这篇文章我们主要掌握以下几个知识点 通过模型新增数据(涉及到自定义时间戳) 使用模型的Create方法新增数据(涉及到批量赋值) NO.1通过模型新增数据 我的数据库和上篇文章结尾的数据库样式是一致的,那么我要想在这里面输入一个名字叫做ChenChai,年龄是为17岁.要如何操作呢? 代码如下: namespace App\Http\Controllers; us
-
Laravel框架Eloquent ORM修改数据操作示例
本文实例讲述了Laravel框架Eloquent ORM修改数据操作.分享给大家供大家参考,具体如下: 这篇文章主要讲述两个知识点 通过模型更新 结合查询语句批量更新 NO.1模型更新 在更新之前我先让你们看一下我的数据库 里面共有四条数据,好,那么我们先使用模型更新,更新我的第四条数据,代码如下: namespace App\Http\Controllers; use App\Student; use Illuminate\Support\Facades\DB; class StudentCo
-
Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
本文实例讲述了Laravel框架Eloquent ORM简介.模型建立及查询数据操作.分享给大家供大家参考,具体如下: 注:以下知识点可能有不全面之处,望见谅 NO.1Eloquent ORM简介 Laravel所自带的Eloquent ORM是一个优美.简洁的ActiveRecord实现,用来实现数据库操作 每个数据表都有与之相对应的"模型(Model)"用于和数据交互 NO.2模型的建立 最基础的模型代码如下: namespace App; use Illuminate\Datab
-
laravel 数据迁移与 Eloquent ORM的实现方法
导语 数据库可以说是后端开发最常用,也是最重要的部分.laravel 提供了很实用的 Eloquent ORM 模型类,简单.直观的与数据库进行交互.同时使用数据迁移管理数据库,可以与团队进行共享以及编辑.二者的更多介绍请查看下方的文档. 以下使用二者进行示例,需求是记录用户浏览记录.请勿将本示例带入实际项目中,本文仅作示例.实际项目根据需求进行记录,以及选择存储方式. 创建数据表 第一步当然是创建数据表了.使用 artisan 命令可以很方便的创建模型以及数据迁移.php artisan ma
-
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
本文实例讲述了laravel框架数据库操作.查询构建器.Eloquent ORM操作.分享给大家供大家参考,具体如下: 1.连接数据库 laravel连接数据库的配置文件位于config/database.php中,在其中connection字段中包含laravel所支持的数据库的配置信息,可以看到其中有主机.端口.数据库.用户名.密码等信息: 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', 'localhost'),
-
Django 解决由save方法引发的错误
最近项目中的资产的任务状态频频出现问题,查看日志文件,看代码逻辑,也没发现什么具体的错误,总是过段时间就会出现一个表的字段没有更新的问题,很头疼. 开始时,觉得是没有添加事务,所以同时更新两个不同的表,其中一个表的内容没有写进去:加了事务后,又出现这种问题. 后来看代码,发现有两个线程在同一时间先后修改同一个表,问题来了,django的save()会更新所有的字段. 举个例子,我有两个线程分别修改User表,thread1修改User表的name字段,thread2修改User表的email字段
随机推荐
- Oracle数据库中创建自增主键的实例教程
- JS仿百度自动下拉框模糊匹配提示
- Photoshop中临女子人像过程图文教程
- 红旗Linux桌面版 4.0光盘启动安装过程图解(Red Flag Linux 4.0)
- php遍历删除整个目录及文件的方法
- 浅谈正则表达式 实例入门
- JavaScript中style.left与offsetLeft的使用及区别详解
- vue2的todolist入门小项目的详细解析
- js实现数字每三位加逗号的方法
- 3分钟掌握常用的JS操作JSON方法总结
- 10种Java开发者编写SQL语句时常见错误
- jquery实现简单的轮换出现效果实例
- JS实现一次性弹窗的方法【刷新后不弹出】
- win2003防止暴力破解的防范方法
- 深入C++ 函数映射的使用详解
- asp.net 使用Response.Filter 过滤非法词汇
- Android图片处理实例分析
- Angular请求防抖处理第一次请求失效问题
- 详解python播放音频的三种方法
- C语言清除scanf()缓存的案例讲解