问题标签 [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.
yii2 - 所需验证器(Yii2)的targetAttribute(或类似的东西)
所以,这是我的场景。我有一个名为 URL 的模型。URL 具有以下属性:(link
必需),scheme
(必需,但不安全。从链接中解析方案)以及其他一些属性,这些属性与此问题无关。
现在,我为该方案制作了一个自定义验证器,如下所示:
网址规则:
当遇到无效方案时,这可以正常工作,例如让我们说 ftp。
但是,当输入完全无效的 URL 时,该 URLscheme
保持为空,并且validateScheme
永远不会触发,因为scheme
不需要属性。为了验证,我调用$model->validate()
了它,即使它不应该返回 true(或者应该是,因为无论如何都不需要该属性)。
validateScheme
所以,我的问题 2:无论属性是空的还是非空的,有没有办法强制触发?我似乎没有在文档中找到这样做的方法。
然后我尝试了另一种方式,并制作scheme
了一个必填字段。问题在于scheme
字段不安全且表单中不存在这一事实。因此,URL 不会保存,但不会显示错误。
我的问题 1,在这种情况下是:有没有办法分配targetAttribute
,scheme
以便错误消息如下所示link
?
PS我知道我可以在控制器中做到这一点。我不想那样做。我只想使用模型。
rest - 在 yii2 rest 上为更新操作的字段设置唯一规则
我正在使用 yii2 创建一个 rest api 来创建和更新用户信息。下面是模型类中的规则函数。
这里我提到emailId
, username
,contactNumber
字段应该是唯一的。当我尝试创建时,它正在检查该字段是否是唯一的。如果是唯一的,它会抛出错误,否则它正在保存。那也行。
但是当我尝试更新该值时,它也在检查该字段的特定值是否唯一。但它不应该是这样的。unique
验证不应该在update action
. 所以我用'on'=>'update'
as like更新了规则Yii 1
。检查以下功能。
但是当我查看官方文档时,没有选项on
可以查看特定的action
. 当我使用'on'=>'update'
时,两者(在创建和更新时)都没有验证。可能是因为on
. 就这样吧。我需要unique
为那些字段添加验证,而create action
不是在update action
.
所以,请任何人帮助我如何仅在创建操作中向这些字段添加唯一验证。
谢谢。
yii2 - 为什么在 Yii2 中执行控制台命令时 CSRF 得到验证
我正在尝试运行后台进程。我的想法是,在 php 中执行一个命令,然后运行控制台 Yii2。
在 Localhost 中一切正常,但服务器无法正常工作:(
向我显示消息:“无法验证发送的数据”,这应该没有意义,因为它是从控制台运行的。
当我直接从控制台运行命令时,一切都很顺利,但是在运行时启动命令时不起作用。
朋友们,非常感谢你们的合作。
“这是从西班牙语翻译的”
php - Yii2验证规则:如何检查日期时间和地点不与另一个条目冲突?
这是我的桌子event
如你所见
交易一
如果用户进行交易 2 然后选择
如何制定检查日期时间和地点的自定义验证规则不在另一个事务中使用?
所以我试过这个:
它不会起作用,因为这if (($d > $a) && ($f = $c))
是错误的。
但我不知道如何写检查那个东西的条件。
yii2 - Yii2高级登录从同一视图到前端和后端
我有一个关于 Yii2 的问题。如果登录用户是管理员,是否可以从前端登录并重定向到后端?
我有两个已配置的本地主机地址,例如: www.test.loc/ <-- 这是前端/web 的路径 www.admintest.loc <-- 这是后端/web 的路径
当用户尝试登录前端 www.test.loc/ 并且如果他是管理员,我想将他重定向到后端并在 www.admintest.loc/ 上登录
我将感谢解决这个问题的每一个答案。
(PS 我认为 common/model/loginForm.php 可以提供帮助,但我不知道如何使用它)
yii2 - yii2 modal 属性根据需要动态
我有一个字段是强制性的,但并不总是强制性的。如果我在模态中按要求编写属性,rules()
例如:[['my_attribute'], 'required']
那么它将使该字段在每种情况下都是必需的。
我可以根据需要制作特定的模态属性吗?在控制器或模态的自定义函数中(即我需要该字段为必填项的地方)。
PS:我想避免使用 jQuery 和 JavaScript。如果 Yii2 有办法完成它,请回答:) 谢谢。
yii2 - 在 Yii2 中重置密码验证
我有一个表格,我正在尝试重置密码。我有 3 个字段密码,更改密码和重新输入密码。
首先我需要检查密码字段是否与数据库密码匹配。
在用户注册时,我使用了默认的 Yii2 功能,它生成随机密码并将该密码保存到数据库中。此外,我在用户登录时使用了默认登录功能。
现在,为了验证密码,我尝试使用与登录相同的默认 Yii2 验证。但是,它不能正常工作。当我使用 $user->validate() 回显并检查控制器时,它总是给出验证,您将在下面的代码中找到它。
我有一个view
resetProfilePassword.php,其中有一个表格
我有一个model
resetProfilePasswordForm.php
这是controller
ProfileController.php
请帮我解决我面临的问题。如果这不是正确的验证方式,请帮助我提供更好的方式来验证密码
yii2 - 如何在 yii2 的目录中创建目录并将文件上传到该目录
我有一个表格
我正在表格中上传文件并提交
在我的控制器中
这只是创建一个名为uploads
. 但是我想在每个用户的上传目录中创建一个目录,即基于user
我要创建的数据库表中的主键并命名目录名称。
例如,如果注册的用户保存为 primarykey 4 ,则必须创建一个名为4的目录,并且必须将他上传的文件保存到该目录中。
如何做到这一点?请帮忙。
php - 使用 DynamicFormWidget 验证唯一的电子邮件 - Yii2
我正在使用DynamicFormWidget
多个输入字段,例如:first_name
, last_name
, email
& mobile_no
。而且,我不希望用户键入现有的email
. 手段,email
应该是唯一的。当我不使用它时它正在工作DynamicFormWidget
。实际上,我不知道如何使用 Yii2 验证多个输入表单中的唯一电子邮件。
addmembers.php (查看)
UsersController.php(控制器)
Users.php(模型)
我也试过:
UsersController.php(控制器)
我正在关注yii2-dynamicform
任何帮助/提示/建议都将是可观的。
yii2 - Yii2 - 验证比较表现奇怪
比较验证是一种奇怪的行为 - 无论如何,电子邮件永远不会相同,并且始终显示错误。
这是验证代码:
表格的代码:
这里发生了什么 oO?