Yii 模型17 Mar 2025 | 4 分钟阅读 模型是 MVC 结构的一部分。它们代表了应用程序的规则和逻辑。 意味着它们保存数据并定义数据的验证规则。 模型类由 yii\base\Model 或其子类扩展。 主要使用模型实现以下功能。
属性属性主要代表业务数据。每个属性都是模型的一个可公开访问的属性。它们可以像数组元素或普通对象属性一样被访问。 就像模型的可公开访问的属性一样。 方法, 指定模型类具有哪些属性。 模型类也是 ActiveRecord 类的基类(这是一个具有附加功能的高级模型)。 作为普通对象属性的属性 在 Yii 的早期版本中,场景和验证使用相同的函数处理。 但在 Yii2 中,它们被分成不同的函数,即:rules() 和 scenarios()。 在这里,rules() 指定数据的验证,而 scenarios() 指定哪些属性可以安全地分配给模型。 属性标签属性标签是与属性一起显示以获取用户输入的数值。 例如,在下面的代码中,ID、Name、Designation、Contact 和 Email 表示属性标签。 所有这些都在一个函数 attributeLabels() 下定义。 ![]() 看看上面的快照,标题数据表示属性标签。 场景一个模型可以用于不同的场景。 例如,一个模型可以用于收集登录用户的输入,而它也可以用于收集新用户的注册输入。 因此,在不同的场景中,一个模型可以使用不同的规则和逻辑。 示例 这是 ContactForm.php 代码, 在 SiteController.php 文件中创建一个动作 actionContact 现在,我们将在浏览器中运行该程序, ![]() 现在将 SiteController.php 中的 actionContact 中的场景更改为 现在在浏览器中运行程序时,主题和正文字段将不再是必填字段。 ![]() 验证规则这些是为字段设置的规则,供用户填写。 例如,required 规则将确保相应的字段不为空。 并且电子邮件属性将确保输入的电子邮件是有效的电子邮件。 如果值不满足规则,屏幕上将显示一条错误消息。 要为所有场景中的所有字段声明验证规则,请使用以下代码。 on 属性实现的是,规则将应用于特定场景。 如果您不使用 on 属性,则默认情况下规则将应用于所有字段。 大规模赋值在大规模赋值中,使用一行代码填充模型,其中包含用户输入。 大规模赋值仅适用于安全属性。 看看以下两种代码,它们都将最终用户提交的表单数据分配给 ContactForm 模型的属性。 第一个是, 第一个使用大规模赋值的更容易、整洁且不易出错。 下一主题YII 视图 |
我们请求您订阅我们的新闻通讯以获取最新更新。