2011-02-04 5 views
0

私はカテゴリのモデルを持っています。カテゴリが作成されるときに新しいデフォルトのsub_categoryを作成したいと思います。しかし、私はそれを行う方法がわかりません。ここに私が持っているものがあります。after_createの使用

class Category < ActiveRecord::Base 
    attr_accessible :title, :position 

    has_many :sub_categories 

    after_create :make_default_sub 

    def make_default_sub 
     #Sub_Categories.new(:title=>' '); 
    end 
end 

答えて

3

なぜ使用しないのですかancestry gem?将来、より多くのサブカテゴリを持てば、それらを管理する方が簡単になります。あなたのケースでは例えば

class Category < ActiveRecord::Base 
    attr_accessible :title, :position 

    has_ancestry 

    after_create :create_default_subcategory 

    def make_default_sub 
     children = self.children.new 
     children.title = '' 
     children.position = 1 # or autogenerated 
     children.save! 
    end 
end 

しかし、あなたは、このような奇妙なデフォルトの動作が必要なのか、なぜあなたは、説明することができますか?

おかげ

+0

すべての私の広告は、あなたがこの宝石を使用するには、どのように良いチュートリアルを持っていないカテゴリ –

+0

に、サブカテゴリに属していますか? –

+1

githubのマニュアルを読むことをお勧めします。それは簡単です...本当に。 –

関連する問題