Sha256: 5eaf8c1d6582335ab7952bfcfbad0b9fe8d0bd5aee3251671da896c11d5853fd

Contents?: true

Size: 399 Bytes

Versions: 9

Compression:

Stored size: 399 Bytes

Contents

class Taxonomy < ActiveRecord::Base
  has_many :taxons, :dependent => :destroy
  has_one :root, :class_name => 'Taxon', :conditions => "parent_id is null"

  after_save :set_name

  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

9 entries across 9 versions & 1 rubygems

Version Path
spree_core-0.30.2 app/models/taxonomy.rb
spree_core-0.40.4 app/models/taxonomy.rb
spree_core-0.40.3 app/models/taxonomy.rb
spree_core-0.40.2 app/models/taxonomy.rb
spree_core-0.40.1 app/models/taxonomy.rb
spree_core-0.40.0 app/models/taxonomy.rb
spree_core-0.30.1 app/models/taxonomy.rb
spree_core-0.30.0 app/models/taxonomy.rb
spree_core-0.30.0.beta1 app/models/taxonomy.rb