【问题标题】:Custom validation in yii2 while merging two public variablesyii2 中的自定义验证,同时合并两个公共变量
【发布时间】:2018-01-19 14:57:59
【问题描述】:

实际上,我正在Yii 2 中进行 ajax 验证。我将两个公共变量数据发送到 DB 的列中。在加载帖子值时。如何在该字段上验证自定义。

我的代码:

public $prefix;
public $mobile;
$model->phone = Yii::$app->request->post('prefix') . '' . Yii::$app->request->post('mobile');

我想要这个

['phone, 'unique']

提前致谢

【问题讨论】:

  • 您粘贴的代码是不够的,它只是未分类的碎片。在此处粘贴完整的控制器/模型代码,否则我们无能为力。

标签: php validation yii2 yii2-advanced-app


【解决方案1】:

在模型上调用验证函数之前,您需要合并这两个变量。 您的控制器操作代码应如下所示:

$model->phone=model->prefix.$model->mobile;
$model->validate();
//rest of code  

【讨论】:

    【解决方案2】:

    将规则添加到模型的类定义中,验证并处理您想要的验证结果。例如。验证为 true 时返回 true,验证为 false 时返回错误消息。

    class YourModel extends ActiveRecord {
        public function rules()
        {
            return [
                ['phone', 'unique'],
            ];
        }
    }
    
    $model->validate();
    

    如果您有更多验证规则,您可以使用$model->getErrors('phone') 获取电话属性的结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多