这是我的创建页面
问题/ create.php
<?php $form = ActiveForm::begin(); ?>
<br><br><br>
<?= $form->field($model, 'question')->textInput(['maxlength' => true]) ?>
<?= $form->field($model, 'topic')->textInput(['maxlength' => true]) ?>
<?= $form->field($model1, 'askid')->textInput(['maxlength' => true]) ?>
<div class="form-group">
<?= Html::submitButton($model->isNewRecord ? Yii::t('app', 'Create') : Yii::t('app', 'Update'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
</div>
<?php ActiveForm::end();
askid是另一个表格中的字段问题
questioncontroller
public function actionCreate()
{
$model = new Questions();
$model1 = new Askquestions();
//$model1 -> load(Yii::$app->request->post());
if ($model1->load(Yii::$app->request->post())) {
//$model->user_id=Yii::$app->user->identity->id;
if($model1->save())
return $this->redirect(['index']);
} else {
return $this->render('create', [
'model' => $model, 'model1' => $model1,
]);
}
}
我已经为askquestions表生成了模型和crud,并且还在控制器和视图页面中包含了类但是数据没有在表中插入可能的方式
答案 0 :(得分:1)
可能的解决方案是:(未经测试)
public function actionCreate()
{
$model = new Questions();
$model1 = new Askquestions();
if ($model->load(Yii::$app->request->post()) && $model1->load(Yii::$app->request->post())) {
//$model->user_id=Yii::$app->user->identity->id;
if($model->save() && $model1->save())
return $this->redirect(['index']);
} else {
return $this->render('create', [
'model' => $model, 'model1' => $model1,
]);
}
}
尝试上述代码一次。
但是这个问题的最佳解决方案是创建和表单模型一样,像LoginForm一样,它将具有单一形式的所有属性,并且可以在单个模型中应用验证。一旦发布并验证了所有内容,您就可以将值保存到相应的模型