Module: FileRecord::Persistence

Extended by:
ActiveSupport::Concern
Includes:
ActiveModel::Serializers::JSON
Included in:
Base
Defined in:
lib/file_record/persistence.rb

Defined Under Namespace

Modules: ClassMethods

Instance Method Summary collapse

Instance Method Details

#destroyObject



43
44
45
# File 'lib/file_record/persistence.rb', line 43

def destroy
  File.delete(self.class.filename(id)) if persisted?
end

#persisted?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/file_record/persistence.rb', line 33

def persisted?
  id && File.exists?(self.class.filename(id))
end

#saveObject



38
39
40
# File 'lib/file_record/persistence.rb', line 38

def save
    File.open(self.class.filename(id), 'w') {|f| f.write(to_json) } 
end

#update_attributes(attributes) ⇒ Object



47
48
49
50
51
# File 'lib/file_record/persistence.rb', line 47

def update_attributes(attributes)
  @attributes.merge!(attributes)
  sanitize_attributes
  save
end