universal_table/app/models/table_column.rb

39 lines
1.1 KiB
Ruby
Raw Normal View History

2015-11-13 13:10:00 +00:00
class TableColumn
include Mongoid::Document
include Mongoid::Timestamps
field :key
field :title, localize: true
field :display_in_index, type: Boolean, default: true
field :type
2017-04-13 10:50:32 +00:00
field :date_format, default: "YYYY/MM/DD"
2015-11-13 13:10:00 +00:00
field :is_link_to_show, type: Boolean, default: false
field :order, type: Integer
field :make_categorizable, type: Boolean, default: false
2022-02-24 09:31:45 +00:00
field :default_ordered_field, type: Boolean, default: false
field :order_direction,type: String,default: 'desc'
2024-07-14 14:57:37 +00:00
belongs_to :u_table, :dependent => :destroy, index: true
has_many :column_entries
index({display_in_index: -1}, { unique: false, background: true })
index({order: 1}, { unique: false, background: true })
index({key: 1}, { unique: false, background: true })
2015-11-13 13:10:00 +00:00
2022-02-24 11:34:53 +00:00
def sort_hash(direction)
case self.type
when "text"
{text: direction}
2022-02-25 06:49:00 +00:00
when "integer"
{number: direction}
2022-02-24 11:34:53 +00:00
when "editor"
{content: direction}
when "image"
{image: direction}
when "date"
{date: direction}
when "period"
{period_from: direction,period_to: direction}
end
end
2015-11-13 13:10:00 +00:00
end