【发布时间】:2018-10-11 22:23:52
【问题描述】:
我对在表单之外添加一些数据并将其与表单数据一起发送有疑问。看!我有 3 个字段 ActiveForm:
名称(文本) 电子邮件(电子邮件) 当然(隐藏)
好的,但我需要再添加一个名为“status”的内容。我不想添加隐藏字段,只想添加内部控制器或模型。
怎么做?
控制器:
public function actionFree()
{
$model = new SubscribeForm();
$this->view->title = "ШКОЛА ПИСАТЕЛЬСКОГО МАСТЕРСТВА: Новичок курс";
if ($post = $model->load(Yii::$app->request->post())) {
if ($model->save()) {
Yii::$app->session->setFlash('success', 'Данные приняты');
return $this->refresh();
}
else {
Yii::$app->session->setFlash('error', 'Ошибка');
}
}
else {
// страница отображается первый раз
return $this->render('free-course', ['model' => $model, 'course_id' => 1]);
}
}
型号:
class SubscribeForm extends ActiveRecord
{
public $fio;
public $email;
public $course;
public $status;
public static function tableName()
{
return 'users';
}
public function rules()
{
return [
// username and password are both required
[['fio', 'email'], 'required'],
[['email'], 'unique'],
['email', 'email'],
['email', 'safe']
];
}
}
【问题讨论】:
-
您已经在模型中声明了一个名为 status 的字段 .. 所以只需使用它 ..
$model->status = 'your_status';
标签: ajax database forms activerecord yii2