forked from jasder/forgeplus
23 lines
501 B
Ruby
23 lines
501 B
Ruby
class ProjectPackageCategory < ApplicationRecord
|
|
default_scope { order(position: :asc) }
|
|
|
|
has_many :project_packages, dependent: :destroy
|
|
|
|
after_commit :reset_cache_data
|
|
|
|
def self.cached_data
|
|
Rails.cache.fetch(data_cache_key, expires_in: 1.days) do
|
|
ProjectPackageCategory.select(:id, :name).as_json
|
|
end
|
|
end
|
|
|
|
def self.data_cache_key
|
|
'project_package_category/cached_data'
|
|
end
|
|
|
|
private
|
|
|
|
def reset_cache_data
|
|
Rails.cache.delete(self.class.data_cache_key)
|
|
end
|
|
end |