Yii2只写属性

时间:2015-12-01 09:36:14

标签: php forms yii2 yii2-validation

我的项目需要一些帮助。

我的数据库中有一个用户表。我已将此表连接到User模型。我有一个带有几个输入的用户创建表单。在这个表单中,我有一个密码字段,当我想提交我的表单时,我从这个密码字段中创建一个password_hash和我要保存到我的数据库的哈希。密码变量不会保存在任何地方。

现在问题来了:当我想提交时,生成了password_hash,但密码变量以某种方式被删除或无法到达,当验证到来时,我的密码为空,提交不成功,并写对我而言the Password cannot be blank。 但我填写了这些字段并生成了哈希,但不知何故验证出错了。我想不通,如何解决这个问题。

密码属性是只写的,我知道我无法获得这些值,但是哈希生成器达到了这个值,那么为什么验证器无法到达,为什么无法在字段中找到? ? 我不明白发生了什么事,所以请帮助我。

1 个答案:

答案 0 :(得分:0)

如果要加密密码,请直接使用MD5或其他哈希技术,不需要使用其他变量。 或者在您的情况下,只需在保存之前检查您的密码字段是必需的,因此,如果您不在数据库中保存该字段,它将通过验证消息。因此,请尝试保存密码和哈希密码。