orbit-basic/app/models/asset.rb

34 lines
618 B
Ruby

class Asset
include Mongoid::Document
include Mongoid::Timestamps
mount_uploader :data, FileAssetUploader
field :filename
field :description, localize: true
field :title, localize: true
validates :title, :at_least_one => true
validates :description, :at_least_one => true
validates_presence_of :data
belongs_to :asset_category
belongs_to :assetable, polymorphic: true
has_and_belongs_to_many :tags, :class_name => "AssetTag"
before_save :clean_tags
def sorted_tags
tags.order_by(I18n.locale, :asc)
end
protected
def clean_tags
self.tag_ids.delete('')
end
end