has_alter_ego 0.0.5 → 0.0.6
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.
- data/Changelog.md +3 -3
- data/lib/has_alter_ego.rb +6 -1
- metadata +14 -9
data/Changelog.md
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
# 0.0.5 (2010-06-13)
|
2
2
|
* Implemented smart associations, e.g.
|
3
|
-
|
4
|
-
|
5
|
-
|
3
|
+
category_by_name: Sport # => @car.category = Category.find_by_name("Sport")
|
4
|
+
sellers_by_name_and_active: [Hugo, true] # @car.sellers = Seller.find_all_by_name_and_active("Hugo", true)
|
5
|
+
sellers_by_name_and_active: [[Hugo, Egon], true] # @car.sellers = Seller.find_all_by_name_and_active(["Hugo", "Egon"], true)
|
6
6
|
* mark objects as modified when saved with save!
|
7
7
|
|
8
8
|
# 0.0.4 (2010-06-11)
|
data/lib/has_alter_ego.rb
CHANGED
@@ -14,6 +14,7 @@ module HasAlterEgo
|
|
14
14
|
has_one :alter_ego, :as => :alter_ego_object
|
15
15
|
alias_method :save_without_alter_ego, :save
|
16
16
|
alias_method :destroy_without_alter_ego, :destroy
|
17
|
+
alias_method :alter_ego_with_type_fix, :alter_ego
|
17
18
|
send :include, InstanceMethods
|
18
19
|
reserve_space(opts[:reserved_space])
|
19
20
|
parse_yml
|
@@ -52,7 +53,7 @@ module HasAlterEgo
|
|
52
53
|
end
|
53
54
|
else
|
54
55
|
# Check for destroyed alter_egos
|
55
|
-
alter_ego = AlterEgo.find_by_alter_ego_object_id_and_alter_ego_object_type(primary_key, self.name)
|
56
|
+
alter_ego = AlterEgo.find_by_alter_ego_object_id_and_alter_ego_object_type(primary_key.to_s, self.name)
|
56
57
|
return if alter_ego.try(:state) == "destroyed"
|
57
58
|
|
58
59
|
db_object = self.new
|
@@ -96,6 +97,10 @@ module HasAlterEgo
|
|
96
97
|
end
|
97
98
|
|
98
99
|
module InstanceMethods
|
100
|
+
def alter_ego
|
101
|
+
return AlterEgo.find_by_alter_ego_object_id_and_alter_ego_object_type(self[self.class.primary_key].to_s, self.name)
|
102
|
+
end
|
103
|
+
|
99
104
|
def has_alter_ego?
|
100
105
|
return self.alter_ego.present?
|
101
106
|
end
|
metadata
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: has_alter_ego
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 19
|
4
5
|
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 0
|
7
8
|
- 0
|
8
|
-
-
|
9
|
-
version: 0.0.
|
9
|
+
- 6
|
10
|
+
version: 0.0.6
|
10
11
|
platform: ruby
|
11
12
|
authors:
|
12
13
|
- "Andr\xC3\xA9 Duffeck"
|
@@ -14,7 +15,7 @@ autorequire:
|
|
14
15
|
bindir: bin
|
15
16
|
cert_chain: []
|
16
17
|
|
17
|
-
date: 2010-
|
18
|
+
date: 2010-09-28 00:00:00 +02:00
|
18
19
|
default_executable:
|
19
20
|
dependencies: []
|
20
21
|
|
@@ -28,21 +29,21 @@ extensions: []
|
|
28
29
|
extra_rdoc_files: []
|
29
30
|
|
30
31
|
files:
|
32
|
+
- lib/has_alter_ego/alter_ego.rb
|
33
|
+
- lib/has_alter_ego/dumper.rb
|
31
34
|
- lib/generators/has_alter_ego_generator.rb
|
32
35
|
- lib/has_alter_ego.rb
|
33
|
-
- lib/has_alter_ego/dumper.rb
|
34
|
-
- lib/has_alter_ego/alter_ego.rb
|
35
36
|
- lib/tasks/has_alter_ego.rake
|
36
|
-
- README.md
|
37
37
|
- Changelog.md
|
38
|
+
- README.md
|
38
39
|
- Rakefile
|
39
40
|
- rails/init.rb
|
40
41
|
- generators/has_alter_ego/templates/create_alter_egos.rb
|
41
42
|
- generators/has_alter_ego/has_alter_ego_generator.rb
|
42
|
-
- test/db/fixtures/alter_egos/drinks.yml
|
43
|
-
- test/db/fixtures/alter_egos/cars.yml
|
44
43
|
- test/db/fixtures/alter_egos/sellers.yml
|
45
44
|
- test/db/fixtures/alter_egos/bikes.yml
|
45
|
+
- test/db/fixtures/alter_egos/cars.yml
|
46
|
+
- test/db/fixtures/alter_egos/drinks.yml
|
46
47
|
- test/test_helper.rb
|
47
48
|
- test/has_alter_ego_test.rb
|
48
49
|
has_rdoc: true
|
@@ -55,23 +56,27 @@ rdoc_options: []
|
|
55
56
|
require_paths:
|
56
57
|
- lib
|
57
58
|
required_ruby_version: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
58
60
|
requirements:
|
59
61
|
- - ">="
|
60
62
|
- !ruby/object:Gem::Version
|
63
|
+
hash: 3
|
61
64
|
segments:
|
62
65
|
- 0
|
63
66
|
version: "0"
|
64
67
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
68
|
+
none: false
|
65
69
|
requirements:
|
66
70
|
- - ">="
|
67
71
|
- !ruby/object:Gem::Version
|
72
|
+
hash: 3
|
68
73
|
segments:
|
69
74
|
- 0
|
70
75
|
version: "0"
|
71
76
|
requirements: []
|
72
77
|
|
73
78
|
rubyforge_project:
|
74
|
-
rubygems_version: 1.3.
|
79
|
+
rubygems_version: 1.3.7
|
75
80
|
signing_key:
|
76
81
|
specification_version: 3
|
77
82
|
summary: A Rails plugin which makes it possible to keep seed and live data in parallel
|