对模型中的每个属性应用“trim”过滤器很无聊。任何想法Yii2都有类似的东西:
['*', 'filter', 'filter' => 'trim'],
答案 0 :(得分:2)
据我所知,您必须指定属性才能以下列方式应用required
或filter
等核心验证器
[['attribute_1', 'attribute_2'], 'filter','filter' => 'trim'],
但看起来你很难在那里写下他们的所有名字,并希望自动为所有属性应用过滤器验证器,你需要使用php
函数array_keys
和{{1}如下所示
implode
希望它可以帮助你
答案 1 :(得分:0)
如果有人有更多有趣的想法,请写下来。
public function beforeSave($insert)
{
foreach ($this->getDirtyAttributes() as $attName => $attValue) {
if ($attValue && self::getTableSchema()->columns[$attName]->phpType == 'string') {
$this->{$attName} = trim($attValue);
}
}
}