[英]Yii2 save model to database
我正在尝试使用Yii2做简单的CRUD应用程序,但是当我尝试保存数据时,没有出现验证错误,并且$model->validate()
返回false。 这是我的代码:
public function actionCreate()
{
$model = new Game();
if($model->load(Yii::$app->request->post()) && $model->save())
{
$this->redirect(['game-list']);
}
return $this->render('create', ['model' => $model]);
}
因此, $model->load()
返回true,这是我的模型中的rules()
:
public function rules()
{
return [
[['title', 'subtitle', 'description'], 'required'],
[['id_type', 'is_active', 'picture'], 'default'],
];
}
我在数据库中有7列(此6 + id作为主键)。 如果有人帮助我,我会很高兴。
UPD:查看:
<? $form = ActiveForm::begin(array('options' => array('class' => 'form-horizontal'))); ?>
<?= $form->errorSummary($model); ?>
<?= $form->field($model, 'title')->textInput(); ?>
<?= $form->field($model, 'subtitle')->textInput(); ?>
<?= $form->field($model, 'description')->textInput(); ?>
<div class="form-actions">
<?= Html::submitButton(Yii::t('app', $model->isNewRecord ? 'Create' : 'Update')); ?>
</div>
<? ActiveForm::end(); ?>
我的错误显然是愚蠢的,但事实确实如此。 我已经在模型中创建了beforeSave
方法,但还没有填充它,完全忘记了它的存在。 因此,因为未返回true- validate()
无法正确通过。 很抱歉浪费时间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.