class Group include Mongoid::Document include Mongoid::Timestamps belongs_to :section has_many :tiles, :autosave => true, :dependent => :destroy before_create :initialize_tile def initialize_tile self.tiles.build(data_category: "app", data_content: "quotes", position: 5, shape: "w1 h1", title: "Quotes") self.tiles.build(data_category: "app", data_content: "dailyenglish", position: 6, shape: "w1 h1", title: "Daily English Word") widgets = self.section.desktop.desktop_widgets.collect{|widget| widget.id} for i in 0..3 self.tiles.build(data_category: "widget", position: i+1,desktop_widget_id: widgets[i]) end end end