Sha256: bf9c6ab76eefe75e62c48a6a484bc91fc634864c2b29f87411cf1f4553da5bbd

Contents?: true

Size: 707 Bytes

Versions: 3

Compression:

Stored size: 707 Bytes

Contents

require 'mongoid'
Mongoid::Fields.option :input do |model, field, value|
  #model.validates_presence_of field if value
end
class Base
  include Mongoid::Document
  include Mongoid::Timestamps
  include Mongoid::Versioning
  include Mongoid::Paranoia
  include Mongoid::MultiParameterAttributes

  #associations
  embeds_many :connections
  accepts_nested_attributes_for :connections

  after_destroy :remove_slugs
  after_destroy :remove_connections


  def remove_slugs
    Slug.delete_all(:document_id => id)
  end
  def remove_connections
    records = Base.where(:'connections.parent_id' => id)
    records.each do |record|
      record.connections.where(:parent_id => id).destroy_all
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
classiccms-0.5.10 lib/classiccms/models/base.rb
classiccms-0.5.9 lib/classiccms/models/base.rb
classiccms-0.5.8 lib/classiccms/models/base.rb