Sha256: c126e5f9a5f5b8057c593115e8d97220f3c936603b1d73dc64e179e20cfaa037
Contents?: true
Size: 727 Bytes
Versions: 1
Compression:
Stored size: 727 Bytes
Contents
module Cql::Model::SchemaMethods extend ::ActiveSupport::Concern def table_name self.class.table_name end def primary_key self.class.primary_key end module ClassMethods def table_name @table_name ||= self.model_name.plural end def columns @columns ||= {} end def primary_key(key_name = nil) @primary_key ||= key_name.nil? ? 'id' : key_name.to_s end def column(attribute_name, ruby_class, options = {}) column_name = options[:column_name] || attribute_name @columns ||= {} @columns[column_name.to_sym] = { attribute_name: attribute_name.to_sym, klass: ruby_class.to_s.constantize }.merge(options) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cql_model-0.0.4 | lib/cql/model/schema_methods.rb |