Sha256: 6b18894d15c707429071654b2a8b054dc358bc3f5da1211788f6f6b5fb5d3b53
Contents?: true
Size: 1.52 KB
Versions: 3
Compression:
Stored size: 1.52 KB
Contents
class Shelf < ActiveRecord::Base attr_accessible :name, :display_name, :note, :library_id, :closed include MasterModel scope :real, -> { where('library_id != 1') } belongs_to :library, validate: true has_many :items has_many :picture_files, as: :picture_attachable, dependent: :destroy validates_associated :library validates :library, presence: true validates_uniqueness_of :display_name, scope: :library_id validates :name, format: { with: /\A[a-z][0-9a-z\-_]{1,253}[0-9a-z]\Z/ } acts_as_list scope: :library searchable do string :name string :library do library.name end text :name do [name, library.name, display_name, library.display_name] end integer :position end paginates_per 10 def web_shelf? return true if id == 1 false end def self.web Shelf.find(1) end def first? # 必ずposition順に並んでいる return true if library.shelves.first.position == position false end def localized_display_name display_name.localize end end # == Schema Information # # Table name: shelves # # id :integer not null, primary key # name :string(255) not null # display_name :text # note :text # library_id :integer default(1), not null # items_count :integer default(0), not null # position :integer # created_at :datetime not null # updated_at :datetime not null # deleted_at :datetime # closed :boolean default(FALSE), not null #
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
enju_library-0.1.0.pre39 | app/models/shelf.rb |
enju_library-0.1.0.pre38 | app/models/shelf.rb |
enju_library-0.1.0.pre37 | app/models/shelf.rb |