is it possible to run ActiveRecord validates on given controller and action.
For example I have user_controller
and signup_controller
I
You can run validations using an if
conditional:
validates :email, presence: true, if: :validate_email?
Now you need to define this instance method (in your model):
def validate_email?
validate_email == 'true' || validate_email == true
end
This validate_email
attribute could be a virtual attribute in your model:
attr_accessor :validate_email
And now, you can perform email validation depending on that virtual attribute. For example, in signup_controller#create
you can do something like:
def create
...
@user.validate_email = true
@user.save
...
end