Impedir que seu aplicativo rails de modelo gordo por shadow_form

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 :

class User
include
ActiveModel::Model
attr_accessor
:name, :email, :password
end

E por exemplo formulário de registro:

class UserRegistrationForm < ShadowForm
shadow_of
User
validation
do
validates
:email, presence: true
validates
:password, presence: true
end
end

E agora você UserRegistrationFormgosta 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 :