Как я могу сделать все атрибуты модели безопасными в Yii2? - PullRequest
1 голос
/ 15 марта 2019

Здесь я делаю все поля базы данных как safe для массового назначения?

[$this->attributes, 'safe', 'on' => self::SCENARIO_MIGRATION],

Это правильно, и если нет, то какой лучший способ добиться этого?

1 Ответ

2 голосов
/ 15 марта 2019

Проверка с помощью правила safe для всех атрибутов ничего не проверяет, поэтому в этом нет особого смысла. Вместо создания таких правил может быть лучше пропустить проверку непосредственно в коде:

$model->setAttributes($data, false);
$model->save(false);

Но если вам действительно нужны такие «пустые» правила проверки, вы должны использовать метод attributes(), чтобы получить список имен атрибутов:

[$this->attributes(), 'safe', 'on' => self::SCENARIO_MIGRATION],
...