yii2数据表模型类AR--数据输入与验证
2017-07-12 21:52:55
•
阅读
打赏
数据输入与有效性验证
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()) {
// 获取用户输入的数据,验证并保存
}
// 更新主键为$id的AR
$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 表单 ...
美景欣赏
相关推荐
深度学习 -- 损失函数
深度残差网络(Deep Residual Networks (ResNets))
深度学习 -- 激活函数
神经网络训练 -- 调整学习速率
生成对抗网络(GAN)改进与发展
生成对抗网络(GAN)优点与缺点
生成对抗网络(GAN)的训练
生成对抗网络(GAN)基本原理
生成模型与判别模型