module LunaPark::Extensions::Validatable
@example
class MyForm include LunaPark::Extensions::Validatable validator MyValidator # must respond_to #errors, #success?, #valid_params, .validate def initialize(params) @params = params end def data OpenStruct.new(valid_params) if valid? end private attr_reader :params # define abstract method end form = MyForm.new(foo: 'Foo') form.valid? # => false form.validation_errors # => { bar: ['is missing'] } form.data # => nil form = MyForm.new(foo: 'Foo', bar: 'Bar') form.valid? # => true form.data # => #<OpenStruct foo="Foo" bar="Bar" }
Public Class Methods
included(klass)
click to toggle source
Calls superclass method
# File lib/luna_park/extensions/validatable.rb, line 33 def self.included(klass) klass.include InstanceMethods klass.extend ClassMethods super end