Module: Themis::AR::BaseExtension::ClassMethods
- Defined in:
- lib/themis/ar/base_extension.rb
Overview
:nodoc:
Instance Method Summary collapse
-
#has_themis_validation?(name) ⇒ Boolean
Verify that model has validation set with passed name.
- #has_validation(*args_and_options, &block) ⇒ Object
-
#use_nested_validation_on(*args) ⇒ Object
Set the default value of the
:nested
option for validations.
Instance Method Details
#has_themis_validation?(name) ⇒ Boolean
Verify that model has validation set with passed name.
70 71 72 |
# File 'lib/themis/ar/base_extension.rb', line 70 def has_themis_validation?(name) themis_validation_sets.keys.include?(name.to_sym) end |
#has_validation(name, options, &block) ⇒ Object #has_validation(name_1, name_2, options, &block) ⇒ Object #has_validation(name, validation_module, options, &block) ⇒ Object
61 62 63 64 65 66 |
# File 'lib/themis/ar/base_extension.rb', line 61 def has_validation(*, &block) = . names, args = .partition { |obj| obj.class.in?([String, Symbol]) } validation_module = args.first Themis::AR::HasValidationMethod.new(self, names, validation_module, , block).execute! end |
#use_nested_validation_on(*args) ⇒ Object
Set the default value of the :nested
option for validations.
85 86 87 88 89 90 91 92 93 94 95 96 |
# File 'lib/themis/ar/base_extension.rb', line 85 def use_nested_validation_on(*args) if themis_default_nested warn "WARNING: default nested validation is already defined: " \ "`#{themis_default_nested.inspect}` on #{self}" end args = args.flatten deep_nested = args. associations = args + deep_nested.keys UseNestedValidationOnMethod.new(self, associations, deep_nested).execute end |