O modelo de gordura com validação em todos os casos sempre causa problemas no futuro. Portanto, minha solução é ShadowForm. Agora você pode ter seu modelo original sem validação e usar formulários quando precisar de validação específica. Isso funciona com ActiveRecord e ActiveModel também.
Como funciona
Você tem seu registro ativo ou modelo de modelo ativo : ruby class User include ActiveModel::Model attr_accessor :name, :email, :password end
E por exemplo formulário de registro ruby class UserRegistrationForm < ShadowForm shadow_of User validation do validates :email, presence: true validates :password, presence: true end end
E agora você UserRegistrationForm
gosta de User
+Validation
Se você precisar de um formulário para atualização de e-mail, basta criar um novo como este:
class UserEmailUpdateForm < ShadowForm
shadow_of User
validation do
validates :email, presence: true
end
end
Verifique :