По поводу певрого вопроса - если да, то правильно так:
Код: Выделить всё
public function rules() {
return [];
}
или так:
Код: Выделить всё
public function rules() {
return array_merger($this->owner::rules,[]);
}
По поводу вопроса второго - Можно ли писать геттер отношения прям в поведении?
Код: Выделить всё
public function getRating()
{
$className = $this->className;
return $this->hasMany($className::className(), [$this->attribute => 'id']);
}