Module: DuckRecord::Validations
- Extended by:
- ActiveSupport::Concern
- Includes:
- ActiveModel::Validations
- Included in:
- Base
- Defined in:
- lib/duck_record/validations.rb,
lib/duck_record/validations/subset.rb,
lib/duck_record/validations/uniqueness_on_real_record.rb
Overview
Active Record Validations
Active Record includes the majority of its validations from ActiveModel::Validations all of which accept the :on
argument to define the context where the validations are active. Active Record will always supply either the context of :create
or :update
dependent on whether the model is a new_record?.
Defined Under Namespace
Modules: ClassMethods, HelperMethods Classes: SubsetValidator, UniquenessOnRealRecordValidator
Instance Method Summary collapse
- #valid!(context = nil) ⇒ Object
-
#valid?(context = nil) ⇒ Boolean
(also: #validate)
Runs all the validations within the specified context.
Instance Method Details
#valid!(context = nil) ⇒ Object
47 48 49 50 51 52 53 |
# File 'lib/duck_record/validations.rb', line 47 def valid!(context = nil) if valid?(context) true else raise RecordInvalid.new(self) end end |
#valid?(context = nil) ⇒ Boolean Also known as: validate
Runs all the validations within the specified context. Returns true
if no errors are found, false
otherwise.
Aliased as #validate.
If the argument is false
(default is nil
), the context is set to :default
.
Validations with no :on
option will run no matter the context. Validations with some :on
option will only run in the specified context.
41 42 43 44 45 |
# File 'lib/duck_record/validations.rb', line 41 def valid?(context = nil) context ||= default_validation_context output = super(context) errors.empty? && output end |