Yii2 ActiveRecord save失败

当给AR写beforeSave方法时,注意返回true还是false。如果没有返回值,或者返回false,那么就不会存入数据库。如下

晚上写代码的时候beforeSave忘了返回true,导致无法存入数据。

操作完后return true。就可正常存入了。

http://www.yiichina.com/doc/api/2.0/yii-db-baseactiverecord#beforeSave()-detail

时间: 2024-12-20 21:25:44

Yii2 ActiveRecord save失败的相关文章

yii2 ActiveRecord多表关联以及多表关联搜索的实现

一个老生常谈的问题.最近通过群里的反馈,觉得很多人还是没有去理解这个问题.今天把这个问题讲明白了,看看yii2 ActiveRecord是怎么个多表关联以及如何去优化这个关联. 场景需求: 假设我们有一张用户表user和一张用户渠道表auth,两张数据表通过user.id和auth.uid进行一对一关联.现需要在user列表展示auth表的来源渠道source,且该渠道可搜索. 首先我们先通过gii生成user和auth系列相关的model和操作.此处不做详细说明,有关gii的操作可参考gii详

Yii2的save()方法容易出错的地方

如果save()返回true, 但是数据没有保存成功,则应该是开启了事务且已经回滚 如果save()返回false, 则使用$model->errors查看错误原因 可以设置$model的场景,对具体的场景进行验证; 没有指定场景的验证规则会在所有的场景通用 save()方法有两个参数,第一个参数为是否开启验证,第二个字段为验证的字段,但是会调用beforeBValidate() 源码如下所示: public function save($runValidation = true, $attri

yii2 数据库和ActiveRecord

Yii2数据库和 ActiveRecord 类 1.在 common/config/main-local.php 里面配置数据账号和密码. 2.ActiveRecord(活动记录,简称AR类),提供了一套面向对象的接口,用以访问数据库中的数据 一个AR类关联一张数据表,每个AR对象对应表中的一行: AR类的属性,对应为数据库中的列 可以以面向对象的方式来操纵数据库中的数据,这样就不用谢 sql 语句来实现数据库的访问. find() 方法返回一条记录; $model = Post::find()

yii2增删改查及AR的理解

yii2增删改查 // 返回 id 为 1 的客户 $customer = Customer::findOne(1); // 返回 id 为 1 且状态为 *active* 的客户 $customer = Customer::findOne([ 'id' => 1, 'status' => Customer::STATUS_ACTIVE, ]); // 返回id为1.2.3的一组客户 $customers = Customer::findAll([1, 2, 3]); // 返回所有状态为 &

xen save/restore 过程

以下分析基于 xen4.2.3, 虚拟机都是hvm模式 使用libxl库有两种方式启动一个虚拟机,一种是 xl create xx.conf , 这种方式从一个配置文件开始启动一个虚拟机,速度相对较慢.另一种是xl restore checkpointfile , 这种从一个checkpoint文件启动(恢复)虚拟机,速度非常快. checkpointfile 可以认为是一个虚拟机快照,保存了虚拟机某一时刻的内存和设备状态,这里的'某一时刻'其实就是执行保存快照  xl save domainn

yii2中关联查询

yii2 ActiveRecord多表关联以及多表关联搜索的实现 一个老生常谈的问题.最近通过群里的反馈,觉得很多人还是没有去理解这个问题.今天把这个问题讲明白了,看看yii2 ActiveRecord是怎么个多表关联以及如何去优化这个关联. 场景需求: 假设我们有一张用户表user和一张用户渠道表auth,两张数据表通过user.id和auth.uid进行一对一关联.现需要在user列表展示auth表的来源渠道source,且该渠道可搜索. 首先我们先通过gii生成user和auth系列相关的

记录一下ionic canvas图片

import { Component, Inject, forwardRef } from '@angular/core'; import { IonicPage, NavController, NavParams } from 'ionic-angular'; import { Screenshot } from '@ionic-native/screenshot'; import { GlobalFunction } from'../../services/GlobalFuntion'; i

struts JSP表单数据的显示和回显

1.链接 1)<a href="${pageContext.request.contextPath}/visit/add.action  /> 2)<a href="${pageContext.request.contextPath }/customer/edit?cust_id=<s:property value="#customer.cust_id" />" onclick="return window.conf

Redis 无法正常关闭服务

前置知识:Redis最简单的基本命令: 1. 系统终端 ./redis-server 启动redis服务 ./redis-cli 启动redis客户端 ./redis-cli shutdown 关闭redis服务 2. 在使用./redis-cli进入redis命令终端之后, shutdown 关闭redis服务 save 保存存储至磁盘 set [key] [value] 对键[key]赋值[value] get [key] 获取键[key]对应的值 问题描述: Redis安装完成,使用./r