mark_only 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/README.md +3 -1
- data/lib/mark_only/version.rb +1 -1
- data/lib/mark_only.rb +7 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YjUxYmFlNWJjMzA1M2VmYzA5MTYxNWQyYzVhZjI2MjI1ODk2MGMyZQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MzAzM2Q3ZGFjYzgyZjVmMGFkYzIxNmM4YjhhMTMxMGUwYjRlNWE4Mg==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
Y2ZiODM2NWMwOThjNzhjYWFhYTE2NWM3MDdiYmYwYWM2YmNkNzE4ZDVjMGYz
|
10
|
+
ZTU5MDc5NjAyYWVmNDljZWJiYjgyODRhMTgxZDliY2JhZjEzMjVlNTlhNjA2
|
11
|
+
ODg3MWVkN2JhMmE5OWZlMWY0ODNkNWNhMzUzYzBlMGU3YmQzZDA=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
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:
|
data/lib/mark_only/version.rb
CHANGED
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
|
-
|
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.
|
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-
|
11
|
+
date: 2013-04-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|