entity.rb revision 224367cd32f17bdeb32af5c54233d1673123ed45
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yooclass Entity < ActiveRecord::Base
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo extend Dagnabit::Vertex::Activation
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo acts_as_vertex
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo connected_by 'EEdge'
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo include Metadatable
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo include Entity::Searching
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo include Entity::Readability
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo belongs_to :ontology
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo has_and_belongs_to_many :sentences
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo has_and_belongs_to_many :oops_responses
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo scope :kind, ->(kind) { where :kind => kind }
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo def self.groups_by_kind
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo groups = select('kind, count(*) AS count').group(:kind).order('count DESC, kind').all
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo groups << Struct.new(:kind, :count).new("Symbol",0) if groups.empty?
b035f7920938e52716cdbdd3cff369f734f028cfSungbae Yoo groups
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo end
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo def to_s
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo self.text
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo end
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yooend
2b371b262f7272266ff18cc2aff65176a2c16383Sungbae Yoo