Есть таблица, с типами varchar и дефолтным значением NULL. При создании записи через Active Record вместо NULL я получаю в базе пустые поля. Начал искать, нашел рекомендацию в валидации дополнительно прописывать дефолтное значение для нужных полей: 'default', 'value' => NULL
Так и сделал, теперь при добавлении новой записи всё как задумано, в таблицу пишутся NULL.
Но вот при update всё осталось по-прежнему. Вместо NULL пишутся пустые строки.
Модель, на всякий случай:
Код: Выделить всё
class RealtyObjects extends \yii\db\ActiveRecord {
public function rules() {
return [
.....
[['region', 'city', 'destination', .....], 'string', 'max' => 200],
// [['region', 'city', 'destination', .....], 'trim'],
[['region', 'city', 'destination', .....], 'default', 'value' => NULL],
];
}
Код: Выделить всё
public function actionUpdate($id) {
$model = $this->findModel($id);
if ($model->load(Yii::$app->request->post())) {
if ($model->save(false)) {
Yii::$app->session->setFlash ('success', 'Объект отредактирован');
}
return $this->redirect(['index']);
}