【问题标题】:how to use safe validation rule in yii2?如何在 yii2 中使用安全验证规则?
【发布时间】:2017-04-17 04:12:39
【问题描述】:

我对安全验证器有一些疑问。有四种情况

i)我有一些如下的验证规则

[['name'], 'required','message' => 'You must enter name'],

在这种情况下,我想要安全验证,否则就足够了

ii)我有一些验证规则,如下所示

public function scenarios()
{
    return [
        self::SCENARIO_INFO => ['title', 'phone'],           
    ];
}

这样的规则

[['title'], 'required','message' => 'You must enter Title','on' => 'info'],

在这种情况下,我也想要安全验证,否则就足够了。

iii)第三种情况,我只有公共属性,没有适用于该属性的验证规则,但我希望用户输入表单中的该属性。

iv) 第四种情况,我只有公共属性,没有适用于该属性的验证规则,而且我也不希望该属性甚至形成,仅在内部使用(即模型)。

在哪些情况下必须使用安全验证规则,我是 yii 的新手,所以请解释一下易于理解的方式。提前致谢

【问题讨论】:

  • @Insane Skull 上面给出了关于 Yii 1.1 的详细解释,但是 OP 在问题标题中提到了 Yii2。尽管核心概念保持不变,但在 Yii2 中,大规模分配的过程发生了变化。
  • 感谢您花时间@insane骷髅

标签: validation yii2 yii2-advanced-app


【解决方案1】:

从您提供的案例看来,case# iii) 将是使用safe 的正确情况。

为了正确理解,请明确安全属性大量作业的概念。参考以下链接:

http://www.yiiframework.com/doc-2.0/guide-structure-models.html#massive-assignment http://www.yiiframework.com/doc-2.0/guide-structure-models.html#safe-attributes

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-12
    • 2019-01-20
    相关资源
    最近更新 更多