id
username
password
===========================================
验证器
protected $rule = [
'username' => 'require|max:16|unique:admin',
'password' => 'require',
];
protected $message = [
'username.require' => '管理员账号必须填写!',
'username.max' => '管理员账号不得超过16个字符',
'username.unique' => '管理员账号不得重复!',
'password.require' => '管理员密码不得为空!',
];
protected $scene = [
'add' => ['username','password'],
'edit' => ['username','password'],
];
===========================================
控制器
$validate = validate('Admin');
if (!$validate->scene('edit')->check($datas)) {
$this->error($validate ->getError());
}
===========================================
说明:添加是成功的,但是修改,你什么都不动他 就是原来的数据 他没有验证到unique:admin唯一性
===========================================
然后就是同样的一个 请往下看
===========================================
数据表lst结构
id
lstname
url
miaoshu
===========================================
验证器类
protected $rule = [
'lstname' => 'require|max:100|unique:lst',
'url' => 'require|max:200|unique:lst|url',
'miaoshu' => 'require|max:50',
];
protected $message = [
'lstname.require' => '友情链接名称不能为空!',
'lstname.max' => '友情链接名称的长度最大不能超过200位!',
'lstname.unique' => '友情链接名称必须是唯一的,不能重复添加!',
'url.require' => '友情链接的URL不能为空!',
'url.max' => '友情链接的URL长度最大不能超过200位!!',
'url.unique' => '友情链接的URL不能重复!!',
'url.url' => '友情链接的URL的格式不正确!~~~',
'miaoshu.require' => '友情链接的描述不能为空!',
'miaoshu.max' => '友情链接的描述不能超过50个字符',
];
protected $scene = [
'add' => ['lstname','url','miaoshu'],
'edit' => ['lstname','url','miaoshu'],
//说明 同样的操作方法 同样的方式 结果却不行了
];
===========================================
控制器
$validate = validate('Lst');
if(!$validate->scene('edit')->check($postdata)){
$this->error($validate->getError());
}
===========================================
修改却报唯一性 lstname.unique 已经存在! 可能我解释的不够清楚!
我做了个视频!
视频和源文件打包的地址:https://pan.baidu.com/s/1hrVwi36
附件上传不了 可能视频体积过大了!
最佳答案