首页 > yii2教程 > yii2数据库使用

yii2数据表模型类AR--数据输入与验证

数据输入与有效性验证

AR继承自yii\base\Model,所以它同样也支持Model的数据输入、验证等特性。例如,你可以声明一个rules方法用来覆盖掉rules()里的;你也可以给AR实例批量赋值;也能通过调用validate()执行数据验证。

当你调用 save()、insert()、update() 这三个方法时,会自动调用validate()方法。如果验证失败,数据将不会保存进数据库。

下面的例子演示了如何使用AR 获取/验证用户输入的数据并将他们保存进数据库:

// 新建一条记录
$model = new Customer;
if ($model->load(Yii::$app->request->post()) && $model->save()) {
// 获取用户输入的数据,验证并保存
}

// 更新主键为$idAR
$model = Customer::findOne($id);
if ($model === null) {
throw new NotFoundHttpException;
}
if ($model->load(Yii::$app->request->post()) && $model->save()) {
// 获取用户输入的数据,验证并保存
}

 

读取默认值

你的表列也许定义了默认值。有时候,你可能需要在使用web表单的时候给AR预设一些值。如果你需要这样做,可以在显示表单内容前通过调用loadDefaultValues()方法来实现:

$customer = new Customer();
$customer->loadDefaultValues();
// ... 渲染 $customer HTML 表单 ...

 

美景欣赏

美景欣赏

关闭
感谢您的支持,我会继续努力!
扫码打赏,建议金额1-10元


提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。