当前位置: 首页 > 编程笔记 >

yii2 从数据库验证唯一值:唯一验证

闾丘高峰
2023-03-14
本文向大家介绍yii2 从数据库验证唯一值:唯一验证,包括了yii2 从数据库验证唯一值:唯一验证的使用技巧和注意事项,需要的朋友参考一下

示例

如果输入现有值,某些人会遇到有关无法显示错误消息的问题。例如,我不允许用户使用现有电子邮件进行注册。

视图

<?php
......................    
    
    <?= $form->field($modelUser, 'email')->textInput(['class'=>'form-control','placeholder'=>'Email']) ?>
......................

控制者

<?php
use yii\web\Response; // 重要线路
use yii\widgets\ActiveForm; // 重要线路
        
.
.// 您的密码
.
        
public function actionSignup() 
{
            
    $modelUser = new User();
        
    //添加此用于Ajax验证 
    if(Yii::$app->request->isAjax && $modelUser->load(Yii::$app->request->post())){
        Yii::$app->response->format = Response::FORMAT_JSON;
        return ActiveForm::validate($modelUser);
    } 
    if ($modelUser->load(Yii::$app->request->post()) && $modelUser->save()) {
        return $this->redirect(['someplace nice']);
    }
    return $this->render('update', [
        'modelUser' => $modelUser,
    ]);            
}

模型

public function rules()
{
    return [
        ..............
        ['email', 'unique', 'message'=>'Email already exist. Please try another one.'],
        ...........
    ]
}
           

 类似资料:
  • 问题内容: 我有一个字段,例如,在表中应该是唯一的。 使用Spring / Hibernate验证进行验证的最佳方法是什么? 问题答案: 一种可能的解决方案是创建自定义约束(和相应的验证器)。并要查找数据库中的现有记录,请提供(或Hibernate)to 的实例。 EntityManagerAwareValidator ConstraintValidatorFactoryImpl 唯一键 Uniq

  • 问题内容: laravel 4文档提到了唯一的字段验证。他们在这里说明了如何在唯一验证中包含where子句。唯一表的单个WHERE子句,例如: http://laravel.com/docs/validation#rule-unique 现在,我假设这样做是这样的: 然后检查此查询是否返回结果,如果没有通过验证器。 所以我想知道是否有一种方法可以添加更多的where子句?如果是这样怎么办? 问题答

  • 问题内容: 我有一个字段,例如,在表中应该是唯一的。 使用Spring / Hibernate验证进行验证的最佳方法是什么? 问题答案: 一种可能的解决方案是创建自定义约束(和相应的验证器)。并在数据库中查找现有记录,请提供(或Hibernate )to 的实例。 EntityManagerAwareValidator ConstraintValidatorFactoryImpl 唯一键 Uniq

  • 我想用Laravel唯一的验证器来实现SoftDeletes。我已经尝试了很多次,但它产生了这样一个错误。我该怎么办?提前道谢。下面是我的代码示例。

  • 代码链接:https://github.com/kuyaboo/reactiveMongGouniqueValidation.git用户实体图像

  • 问题内容: 我想对Bean验证有一个限制,但这不是标准提供的。如果我要使用JPA ,则不会有独特的验证和错误报告机制。 有没有一种方法可以定义为Bean验证约束并将其与JPA结合使用,例如,JPA创建具有唯一约束的列并检查值是否唯一? 问题答案: 除非获得整个表的锁 ,否则基本上不可能使用SQL查询来检查唯一性(任何并发事务都可以在手动检查之后但在提交正在进行的事务之前修改数据)。换句话说,不可能