创建表单 ======== 在 Yii 中使用表单的主要方式是通过 [[yii\widgets\ActiveForm]]。如果是基于 模型的表单应首选这种方式。此外,在 [[yii\helpers\Html]]中也有一些实用的 方法用于添加按钮和帮助文本。 在客户端上显示的表单,大多数情况下有一个相应的[模型](structure-models.md),用来验证其输入的服务器数据 (可在 [输入验证](input-validation.md) 一节获取关于验证的细节)。 当创建基于模型的表单时,第一步是定义模型本身。该模式可以是一个基于[活动记录](db-active-record.md)的类, 表示数据库中的数据,也可以是一个基于通用模型的类(继承自 [[yii\base\Model]] ), 来获取任意的输入数据,如登录表单。在下面的例子中,我们展示了一个用来做 登录表单的通用模型: ======= 基于活动记录(ActiveRecord)的表单:ActiveForm ----------------------- 在yii中使用表单的主要方式是通过[[yii\widgets\ActiveForm]]。当某个表单是基于一个模型时,应该首选这种方式。此外,在[[yii\helpers\Html]]中有很多实用的方法为表单添加按钮和帮助文档。 在客户端显示的表单,大多数情况下都有一个相应的[模型](structure-models.md),用来在服务器上验证其输入的数据(可在[输入验证](input-validation.md)一节获取关于验证的细节)。当创建一个基于模型的表单时,第一步是定义模型本身。该模型可以是一个基于[活动记录](db-active-record.md)的类,表示数据库中的数据,也可以是一个基于通用模型的类(继承自[[yii\base\Model]]),来获取任意的输入数据,如登录表单。 > Tip: 如果一个表单的输入域与数据库的字段不匹配,或者它存在只适用于它的特殊的格式或者方法,则最好为它创建一个单独的继承自[[yii\base\Model]]的模型。 在接下来的例子中,我们展示了通用模型如何用于登录表单: ```php 'login-form', 'options' => ['class' => 'form-horizontal'], ]) ?> = $form->field($model, 'username') ?> = $form->field($model, 'password')->passwordInput() ?>