module EasyModel::ColumnForActiveModel
テーブルに存在しないカラムを定義する機能を提供する.
詳細¶ ↑
attr_accessor による属性定義とは異なり, データ型及びデフォルト値を指定することが可能.
Public Class Methods
included(base)
click to toggle source
# File lib/easy_model/column_for_active_model.rb, line 14 def self.included(base) base.send(:include, ActiveModel::Model) base.send(:include, ActiveModel::Dirty) base.send(:include, ActiveModel::Serializers::Xml) base.send(:include, ActiveRecord::AttributeAssignment) base.extend(EasyModel::ColumnForActiveModel::ClassMethods) end
Public Instance Methods
easy_model_attribute_names()
click to toggle source
属性名の配列.
戻り値¶ ↑
EasyModel::ColumnForActiveModel::ClassMethods#column
で定義した属性名を文字列配列として返す.
# File lib/easy_model/column_for_active_model.rb, line 28 def easy_model_attribute_names self.class.easy_model_attribute_names end
Also aliased as: attribute_names
easy_model_attributes()
click to toggle source
属性名と値を保持するハッシュ.
戻り値¶ ↑
{属性名 => 値} であるハッシュ.
# File lib/easy_model/column_for_active_model.rb, line 39 def easy_model_attributes self.class.easy_model_attribute_names.reduce({}) do |map, name| map.tap{map[name] = send(name)} end end
Also aliased as: attributes