yii2 表单使用

准备代码文件

form/entry.php

在视图中生成一个 HTML 表单

声明规则去验证输入的数据

创建一个模型代表用户通过表单输入的数据

表单与输入框字段

视图使用小部件 yii\widgets\ActiveForm 去生成 HTML 表单。 其中的 begin() 和 end() 分别用来渲染表单的开始和关闭标签。

yii\widgets\ActiveForm::field() 方法用于创建输入框。

表单字段

代码探析

ActiveForm 类图与代码解析

是的,其实数据首先由客户端 JavaScript 脚本验证,然后才会提交给服务器通过 PHP 验证。 yii\widgets\ActiveForm 足够智能到把你在 EntryForm 模型中声明的验证规则转化成客户端 JavaScript 脚本去执行验证。 如果用户浏览器禁用了 JavaScript, 服务器端仍然会像 actionEntry() 方法里这样验证一遍数据。 这保证了任何情况下用户提交的数据都是有效的。

输入框的文字标签是 field() 方法生成的,内容就是模型中该数据的属性名。 例如模型中的 name 属性生成的标签就是 Name。

输入验证

FormController.php

发表评论