number_post не обязательное поле, и если юзер его не заполнил должно быть по умолчанию 10.
в первой Yii я сделал бы так
Код: Выделить всё
public function afterSave
if(empty($this->number_post)) $this->number_post = 10;
Код: Выделить всё
public function afterSave
if(empty($this->number_post)) $this->number_post = 10;
Код: Выделить всё
use yii\behaviors\SluggableBehavior;
public function behaviors()
{
return [
[
'class'=>SluggableBehavior::className(),
'slugAttribute'=>'link',
'attribute'=>'name'
]
];
}
Код: Выделить всё
public function actionSignup()
{
$model = new User();
if ($model->load(Yii::$app->request->post())) {
if ($model->validate()) {
// form inputs are valid, do something here
return;
}
}
return $this->render('signup', [
'model' => $model,
]);
}
public function beforeSave($insert)
{
if (parent::beforeSave($insert)) {
$this->status = User::STATUS_NOTACTIVE;
return true;
} else {
return false;
}
}
для новой записи передается $insert = truewpd писал(а):ааа, вот я дурень! Актив Рекордс же там. Что то я не подумал.
Значит получается сценарий не надо указывать.
Значит я в сайтконтроллере я создал объект класса Юзер. При заполнении полей данными, если я буду сохранять, то бефоресейв сработает в моделе верно?
Я уточняю, чтоб понять правильно ли я понимаю логику.
Что есть $insert? И как "он" поймет что это добавление а не апдейт?