Sha256: 6c26812eabf0f2d6ddd238108fa4427c08363b2436e1099b31dbf396b1126197

Contents?: true

Size: 986 Bytes

Versions: 8

Compression:

Stored size: 986 Bytes

Contents

class <%=parent_class_name%> < ActiveRecord::Base
	
	has_many :<%=child_plural_name%>, :dependent => :destroy
	
	validates_presence_of :title
	validates_presence_of :filename
	validates_uniqueness_of :filename
	
	def self.page(search, page)
			paginate :per_page => 10, :page => page,
               :order => 'title',
               :conditions => ["title LIKE ?", "%#{search}%"]
  end

	has_one :menu_item, :as => :linkable, :dependent => :destroy
	
	after_create :create_menu_item
	after_update :update_menu_item
	
	def update_menu_item
		@menu_item = self.menu_item
		if @menu_item == nil
			self.create_menu_item
		else
		@menu_item.update_attributes(	
				:title => self.nav,
				:url => "/<%=child_plural_name%>-for/#{self.filename}",
				:active => self.active
		)
		end
	end
	
	def create_menu_item
		@menu_item = self.build_menu_item(
			:title => self.nav,
			:url => "/<%=child_plural_name%>-for/#{self.filename}",
			:active => self.active
		)
		@menu_item.save
	end
	
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
dust-generators-0.2.8 rails_generators/dust_albums/templates/app/models/album.rb
dust-generators-0.2.6 rails_generators/dust_albums/templates/app/models/album.rb
dust-generators-0.2.5 rails_generators/dust_albums/templates/app/models/album.rb
dust-generators-0.2.4 rails_generators/dust_albums/templates/app/models/album.rb
dust-generators-0.2.3 rails_generators/dust_albums/templates/app/models/album.rb
dust-generators-0.2.2 rails_generators/dust_albums/templates/app/models/album.rb
dust-generators-0.2.1 rails_generators/dust_albums/templates/app/models/album.rb
dust-generators-0.2.0 rails_generators/dust_albums/templates/app/models/album.rb