Module: Rubee::Validatable::InstanceMethods

Defined in:
lib/rubee/extensions/validatable.rb

Instance Method Summary collapse

Instance Method Details

#add_error(attribute, hash) ⇒ Object



155
156
157
# File 'lib/rubee/extensions/validatable.rb', line 155

def add_error(attribute, hash)
  @__validation_state.add_error(attribute, hash)
end

#attribute(name) ⇒ Object



142
143
144
# File 'lib/rubee/extensions/validatable.rb', line 142

def attribute(name)
  RuleChain.new(self, name, @__validation_state).attribute
end

#errorsObject



127
128
129
# File 'lib/rubee/extensions/validatable.rb', line 127

def errors
  @__validation_state.errors
end

#invalid?Boolean

Returns:

  • (Boolean)


123
124
125
# File 'lib/rubee/extensions/validatable.rb', line 123

def invalid?
  !valid?
end

#optional(attribute) ⇒ Object



151
152
153
# File 'lib/rubee/extensions/validatable.rb', line 151

def optional(attribute)
  RuleChain.new(self, attribute, @__validation_state).optional
end

#required(attribute, options) ⇒ Object



146
147
148
149
# File 'lib/rubee/extensions/validatable.rb', line 146

def required(attribute, options)
  error_message = options
  RuleChain.new(self, attribute, @__validation_state).required(error_message)
end

#run_validationsObject



131
132
133
134
135
136
# File 'lib/rubee/extensions/validatable.rb', line 131

def run_validations
  @__validation_state = State.new
  if (block = self.class.validation_block)
    instance_exec(&block)
  end
end

#subjectObject



138
139
140
# File 'lib/rubee/extensions/validatable.rb', line 138

def subject
  @__validation_state.instance
end

#valid?Boolean

Returns:

  • (Boolean)


118
119
120
121
# File 'lib/rubee/extensions/validatable.rb', line 118

def valid?
  run_validations
  @__validation_state.valid
end