问题标签 [yii2-validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1532 浏览

ajax - 模态框中的 Yii2 服务器端 Ajax 验证

在我的模态框中,我想检查唯一的电子邮件,这只能在提交表单后完成。当我触发提交按钮时,控制器操作将发送给我在控制器中创建操作,因为它将返回唯一的电子邮件地址错误。我希望这个错误显示在模态框中。所以我使用了Ajax提交。下面是我的代码。

我的表格

我的控制器创建动作

js文件

});

我如何在模态框中出现错误。即使出现错误,也会触发警报(“成功”)。如果没有唯一的电子邮件,它就完美了。我想弄清楚如何使模态框出现错误。谢谢!!!

0 投票
2 回答
1137 浏览

yii2-advanced-app - yii2 规则中的自定义验证不起作用

yii2如何实现自定义验证?

我在模型规则中的代码是

我还有什么需要考虑的吗?

0 投票
2 回答
786 浏览

php - Yii2 唯一验证器在插入速度如此之快时不起作用

我正在使用 ActiveRecord 模型来保存数据。

Unique Validator工作非常完美。但是当我如此快速地插入数据时,它就不再完美了。在某些请求中,我得到了 Yii 无法捕获的错误。

完整性约束违规– yii\db\IntegrityException SQLSTATE[23000]: 完整性约束违规: 1062 Duplicate entry '***'...

我们有什么解决方案可以在不添加其他服务的情况下解决这个问题吗?

谢谢 !

0 投票
1 回答
755 浏览

yii2 - Yii2 在数组字段中需要验证器

在我的代码中,我有一个字段(例如字段名称是exampleField[]),我在其中实现了通过 JS添加更多功能。现在,我想在每个字段上实现 Yii2所需的 Validtor 。我已经使用了每个验证器,但它不起作用。我的yii2版本是2.0.6。先谢谢了

这是我的 javascript 代码

0 投票
1 回答
1117 浏览

php - 如何在场景中为具有 ajax 验证的字段设置验证消息?- Yii2

我将一个模型文件用于 2 个表单。一个用于注册,其他用于添加成员

我没有为SIGNUP表单设置任何场景。但是,设置了添加成员表单的方案。

模型

看法

在这里,我将场景设置为$modelTeamMembers->scenario = 'addteammembersidebar';.

email字段外,所有验证错误消息均有效。如果,我'enableAjaxValidation' => true从现场删除,它的工作原理。但是,对我来说'enableAjaxValidation' => true是必需的。

图片

在此处输入图像描述

如图所示,可以清楚地看到错误消息“请输入您的电子邮件地址。 ”应该是“请输入电子邮件地址。 ”。只有email字段验证错误消息不正确。除了一切都很好。

email如何为场景设置字段验证消息?任何帮助/提示/建议都是可观的。

0 投票
1 回答
1193 浏览

php - Yii2 中的外键验证规则

我有parent_id它可以有NULL值 - 默认设置为0

模型

但是存在规则不起作用。

我做错了什么?

更新

今天我删除了以下规则并且它有效:

但是,如果要将默认值更改为其他值,我该怎么办?

0 投票
1 回答
7180 浏览

php - 正则表达式 yii2 电话号码验证器

我正在尝试使用 yii2 中的正则表达式验证器验证以下电话号码:

像这样

但我无法为这些电话号码获得正确的正则表达式,我们可以在 yii2 中执行此操作有什么不同的方法吗?

0 投票
2 回答
1331 浏览

validation - 需要选择至少两个选项的验证规则

我有以下验证规则:

该属性是一个由Select2小部件(多选)dagen_ids填充的数组。

我要实现的是有一个验证规则,只有在何时需要$model->frequentie == 2,当需要时用户需要选择至少2 个选项。

对于第二部分,我尝试了以下内联验证代码,但不幸的是它似乎没有任何效果..

有人可以进一步帮助我并向我解释如何组合这些验证规则吗?

编辑

控制器:

查询:

0 投票
2 回答
889 浏览

yii2 - Yii2 验证时

在两对输入字段中,我只需要其中一个。我无法正确验证。

listing_image_url并且仅在为 nullposter_image_url时才需要。$model->listingImage

也尝试使用strlen($model->listingImage) == 0.

和上面一样,但反过来。

0 投票
7 回答
37672 浏览

activerecord - Yii2:如何在 ActiveRecord 中设置默认属性值?

这似乎是一个微不足道的问题,但是我能想到的所有明显的解决方案都有自己的缺陷。

我们想要的是能够为新记录设置任何默认的 ActiveRecord 属性值,以使其在验证之前和期间可读并且不干扰用于搜索的派生类的方式。

一旦我们实例化类,就需要设置默认值并准备好,以便(new MyModel)->attr返回默认attr值。

以下是一些可能性和他们遇到的问题:

  • A)MyModel覆盖该方法并在为 trueinit()时分配默认值,如下所示:isNewRecord

    问题:搜索。除非我们明确地取消设置我们的默认属性MySearchModel(非常容易出错,因为它太容易忘记),否则这也会在调用search()派生MySearchModel类之前设置值并干扰搜索(attr属性已经设置,因此搜索将返回结果不正确)。在 Yii1.1 中,这是通过在调用unsetAttributes()之前调用来解决的search(),但是在 Yii2 中不存在这样的方法。

  • B)MyModel覆盖这样的beforeSave()方法:

    问题:未保存的记录中未设置属性。(new MyModel)->attrnull。更糟糕的是,即使是其他依赖此值的验证规则也无法访问它,因为验证后beforeSave()调用。

  • C)为了确保值在验证期间可用,我们可以重写该beforeValidate()方法并在那里设置默认值,如下所示:

    问题:在未保存(未验证)的记录中仍未设置属性。$model->validate()如果我们想获得默认值,我们至少需要调用。

  • D)在验证期间使用DefaultValidatorinrules()设置默认属性值,如下所示:

    问题:与 B) 和 C) 相同。在我们实际保存或验证记录之前,不会设置值。

那么设置默认属性值的正确方法是什么?有没有其他方法没有概述的问题?