Если я правильно понял, то Вы используете одну модель для этих форм.
Вам нужно использовать сценарии в модели.
В модели:
class User extends ActiveRecord
{
const SCENARIO_LOGIN = 'login';
const SCENARIO_REGISTER = 'register';
public function scenarios()
{
return [
self::SCENARIO_LOGIN => ['username', 'password'],
self::SCENARIO_REGISTER => ['username', 'email', 'password'],
];
}
}
В контроллере:
$model = new User;
$model->scenario = User::SCENARIO_LOGIN;
Соответственно в разных action можно задать разные сценарии.
P.S. Как альтернативный вариант можно так же задать условия валидации, при котором оно будет срабатывать.