mark_only 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZTFhODAwYWViNjgwOTcyNjdmYjkzNTQ0ZDI2MzdhMWQ2NDkzNzM5YQ==
4
+ YjUxYmFlNWJjMzA1M2VmYzA5MTYxNWQyYzVhZjI2MjI1ODk2MGMyZQ==
5
5
  data.tar.gz: !binary |-
6
- ZjZhNmNmMzZjMzFjMjJkMDExYTc0YmIxZGI3ZTdiNmEzMGYwYmU2Nw==
6
+ MzAzM2Q3ZGFjYzgyZjVmMGFkYzIxNmM4YjhhMTMxMGUwYjRlNWE4Mg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- MDJiMmVmNGJmZDJiNmQyMTBjYzExZWZjOTgxY2YxOTM4YThlM2NkMzU5Yjc3
10
- ZDgyM2E5M2FiNWI0MWMzMzFhOGIxZmU3MWQ2ZTA2NmRlMjFkZmQ1ODYyNGEz
11
- MzAxYTU0ZTg4MzI0MDE1ZjUzOWRhYmExY2I4MWM5MzFlNzI5Nzc=
9
+ Y2ZiODM2NWMwOThjNzhjYWFhYTE2NWM3MDdiYmYwYWM2YmNkNzE4ZDVjMGYz
10
+ ZTU5MDc5NjAyYWVmNDljZWJiYjgyODRhMTgxZDliY2JhZjEzMjVlNTlhNjA2
11
+ ODg3MWVkN2JhMmE5OWZlMWY0ODNkNWNhMzUzYzBlMGU3YmQzZDA=
12
12
  data.tar.gz: !binary |-
13
- MTQ4MDQyZGYzYThjMWY0OWIzYzk0Yjg2MTkyOWFmM2E3NzhjNDA2OTQzNjcz
14
- NjM1ZjUzMDE3NTAzYmNiZTcyYjBkZWM3ZGI2ZDhiNzAzYTUwMmJmZDM3NGRm
15
- YmUyZjFkYTdiYjNkYjg1Y2E1ZTE3MWY4NmFjOTgzNmI0ZGE1ZjA=
13
+ ZWNkNGU1YjZhNWNiZjE2NzhjZDZjOTY1ZTIzOThjMzYzNDI2NzNjNjcwNGU0
14
+ ZGE1NDFhZGZmYmYyNWY4OTI5M2Q1NTA4MWNjYzU0N2Q3M2ZjN2I4MTBlZjdh
15
+ YmI4ZDA3MGQ5NmYxODg3MzQ4MDgwNzU4YzZiZTQyNGVkNzk3ZTM=
data/README.md CHANGED
@@ -27,7 +27,7 @@ Updating is as simple as `bundle update mark_only`.
27
27
  ```ruby
28
28
  class AddDeletedAtToClient < ActiveRecord::Migration
29
29
  def self.up
30
- add_column :clients, :some_column_to_mark, :string
30
+ add_column :clients, :some_column_to_mark, :string, :default => 'active'
31
31
  end
32
32
 
33
33
  def self.down
@@ -36,6 +36,8 @@ class AddDeletedAtToClient < ActiveRecord::Migration
36
36
  end
37
37
  ```
38
38
 
39
+ Use the active_value as `:default`.
40
+
39
41
  ### Usage
40
42
 
41
43
  #### In your environment.rb:
@@ -1,3 +1,3 @@
1
1
  module MarkOnly
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
data/lib/mark_only.rb CHANGED
@@ -19,13 +19,17 @@ module MarkOnly
19
19
  end
20
20
 
21
21
  def delete
22
- puts "updating column #{self.mark_only_column} with value #{MarkOnly.deleted_value}"
23
22
  update_attribute_or_column(self.mark_only_column, MarkOnly.deleted_value) if !deleted? && persisted?
23
+ rescue => e
24
+ logger.error("failed to set #{self.mark_only_column} to #{MarkOnly.deleted_value} in #{self}", e)
25
+ raise e
24
26
  end
25
27
 
26
28
  def restore!
27
- puts "updating column #{self.mark_only_column} with value #{MarkOnly.active_value}"
28
29
  update_attribute_or_column self.mark_only_column, MarkOnly.active_value
30
+ rescue => e
31
+ logger.error("failed to set #{self.mark_only_column} to #{MarkOnly.active_value} in #{self}", e)
32
+ raise e
29
33
  end
30
34
 
31
35
  def destroyed?
@@ -35,10 +39,6 @@ module MarkOnly
35
39
 
36
40
  private
37
41
 
38
- def default_mark_only_column
39
- self.send("#{self.mark_only_column}=".to_sym, MarkOnly.active_value) unless self.send(self.mark_only_column.to_sym) == MarkOnly.deleted_value
40
- end
41
-
42
42
  # Rails 3.1 adds update_column. Rails > 3.2.6 deprecates update_attribute, gone in Rails 4.
43
43
  def update_attribute_or_column(*args)
44
44
  respond_to?(:update_column) ? update_column(*args) : update_attribute(*args)
@@ -52,8 +52,7 @@ end
52
52
 
53
53
  class ActiveRecord::Base
54
54
  def self.mark_only(col_name)
55
- after_initialize :default_mark_only_column
56
- before_save :default_mark_only_column
55
+ raise "#{self} must call mark_only with a column name!" unless col_name
57
56
  class_attribute :mark_only_column, instance_writer: true
58
57
  self.mark_only_column = col_name.to_sym
59
58
  alias :destroy! :destroy
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mark_only
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gary S. Weaver
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-04-17 00:00:00.000000000 Z
11
+ date: 2013-04-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord