Sha256: a5617a7351e0fa03fbaf1e2eb90df8b620be8b61edad8a67e1a21636380c49a0

Contents?: true

Size: 630 Bytes

Versions: 5

Compression:

Stored size: 630 Bytes

Contents

require './record/mongo_record'
require './model/site_model'

class SiteRecord < MongoRecord
  extend SiteModel
  attr_reader :site
  
  def initialize(site, values={}, new_record=true)
    @site = site
    super(values, new_record)
  end
  
  def site_id;  @values['_site_id']; end

  def default_values
    super.merge({'_site_id' => site.id})
  end
  
  def inspect_hash
    {site_id: site_id}.merge(super)
  end
  
  def perform_reload(params)
    document = load_mongo_document(_id: params[:id])
    initialize(params[:site], document)
  end
  
  def prepare_reload_params
    super.tap {|vals| vals[:site] = site}
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
yodel-0.0.7 lib/yodel/models/core/record/site_record.rb
yodel-0.0.4 lib/yodel/models/core/record/site_record.rb
yodel-0.0.3 lib/yodel/models/core/record/site_record.rb
yodel-0.0.2 lib/yodel/models/core/record/site_record.rb
yodel-0.0.1 lib/yodel/models/core/record/site_record.rb