Sha256: d4f7cfcd5bcce8ae2fbd6e5f4f74bcd3b3d9807c519b34c5d019d0223e81dbd6

Contents?: true

Size: 422 Bytes

Versions: 14

Compression:

Stored size: 422 Bytes

Contents

class Taxonomy < ActiveRecord::Base

  validates :name, :presence => true

  has_many :taxons, :dependent => :destroy
  has_one :root, :class_name => 'Taxon', :conditions => "parent_id is null"

  after_save :set_name

  private

  def set_name
    if self.root
      self.root.update_attribute(:name, self.name)
    else
      self.root = Taxon.create!({ :taxonomy_id => self.id, :name => self.name })
    end
  end

end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
spree_core-0.60.6 app/models/taxonomy.rb
spree_core-0.60.5 app/models/taxonomy.rb
spree_core-0.50.4 app/models/taxonomy.rb
spree_core-0.60.4 app/models/taxonomy.rb
spree_core-0.50.3 app/models/taxonomy.rb
spree_core-0.60.3 app/models/taxonomy.rb
spree_core-0.60.2 app/models/taxonomy.rb
spree_core-0.70.RC1 app/models/taxonomy.rb
spree_core-0.60.1 app/models/taxonomy.rb
spree_core-0.60.0 app/models/taxonomy.rb
spree_core-0.60.0.RC1 app/models/taxonomy.rb
spree_core-0.50.2 app/models/taxonomy.rb
spree_core-0.50.1 app/models/taxonomy.rb
spree_core-0.50.0 app/models/taxonomy.rb