Module: ActiveFile

Defined in:
lib/active_file.rb,
lib/active_file/version.rb

Defined Under Namespace

Modules: ClassMethods

Constant Summary collapse

VERSION =
"0.0.2.0"

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/active_file.rb', line 77

def self.included(base)
    base.extend ClassMethods
    base.class_eval do
      def initialize(parameters = {})
          @id = self.class.next_id
          @destroyed = false
          @new_record = true

          parameters.each do |key, value|
              instance_variable_set "@#{key}", value
          end
      end
    end
end

Instance Method Details

#destroy(id) ⇒ Object



18
19
20
21
22
23
# File 'lib/active_file.rb', line 18

def destroy(id)
    unless @destroyed or @new_record
        @destroyed = true
        FileUtils.rm "db/revistas/#{@id}.yml"
    end
end

#saveObject



10
11
12
13
14
15
16
# File 'lib/active_file.rb', line 10

def save
    @new_record = false # seta objeto como registro existente

    File.open("db/revistas/#{@id}.yml", "w") do |file|
        file.puts serialize
    end
end