Module: Dynamoid::Validations

Extended by:
ActiveSupport::Concern
Includes:
ActiveModel::Validations, ActiveModel::Validations::Callbacks
Included in:
Components
Defined in:
lib/dynamoid/validations.rb

Overview

Provide ActiveModel validations to Dynamoid documents.

Defined Under Namespace

Modules: ClassMethods

Instance Method Summary collapse

Instance Method Details

#save(options = {}) ⇒ Object

Override save to provide validation support.

Since:

  • 0.2.0



14
15
16
17
18
# File 'lib/dynamoid/validations.rb', line 14

def save(options = {})
  options.reverse_merge!(validate: true)
  return false if options[:validate] and (not valid?)
  super
end

#save!Object

Raise an error unless this object is valid.

Raises:

Since:

  • 0.2.0



31
32
33
34
35
# File 'lib/dynamoid/validations.rb', line 31

def save!
  raise Dynamoid::Errors::DocumentNotValid.new(self) unless valid?
  save(validate: false)
  self
end

#valid?(context = nil) ⇒ Boolean

Is this object valid?

Returns:

  • (Boolean)

Since:

  • 0.2.0



23
24
25
26
# File 'lib/dynamoid/validations.rb', line 23

def valid?(context = nil)
  context ||= (new_record? ? :create : :update)
  super(context)
end