Sha256: b4a881277c32116ead5e245ea137b14683d5b58ff760ee69f60a89ac326165a8
Contents?: true
Size: 780 Bytes
Versions: 1
Compression:
Stored size: 780 Bytes
Contents
module FieldsValidator extend ActiveSupport::Concern included do validate :validate_column_names end class_methods do def validate_required_attributes required_attributes.each do |a| validates a.to_sym, presence: true end end def load_required_attributes(*_attrs) @required_attributes=_attrs.any? ? _attrs : [] @required_attributes.uniq! end def required_attributes @required_attributes end end private def required_database_fields defined?(super) ? super : [] end def validate_column_names required_database_fields.each { |rdf| errors_add(rdf, "does not have a column in the database.") unless self.class.column_names.include?(rdf)} if required_database_fields.any? end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
morse_fields_validator-1.0.0 | lib/morse_fields_validator/fields_validator.rb |