seed_helper 1.0.1 → 1.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 +4 -4
- data/DEVELOPER_README.md +6 -2
- data/README.md +4 -2
- data/lib/seed_helper.rb +13 -1
- data/lib/seed_helper/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 499423fb76785056cf8c8697a26afdbde975fb78
|
4
|
+
data.tar.gz: 15fd5f6fe81c5230a354f8031c03e987700351a4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d274a63bc89f26791c245d6b4098a51c3c66ed5ad5593017f5b8f8d07c18fe8afad87edfc8a55f213f2c297fd345e2a17b67dbd288fad7724e804342b9e08b75
|
7
|
+
data.tar.gz: f1d4a04117a03dda9b502f33c66b61fe428d8f91e943dd129e242b2089dc63a8bcf24e06d267d8d2baaf8cd5362b02c6b9d1a14d4311068786a8c6af81e8b812
|
data/DEVELOPER_README.md
CHANGED
@@ -6,7 +6,7 @@ This is a README for working on SeedHelper
|
|
6
6
|
|
7
7
|
```
|
8
8
|
gem build seed_helper.gemspec
|
9
|
-
gem install
|
9
|
+
gem install <gempath>
|
10
10
|
```
|
11
11
|
|
12
12
|
## Running
|
@@ -20,4 +20,8 @@ require 'seed_helper'
|
|
20
20
|
include SeedHelper
|
21
21
|
```
|
22
22
|
|
23
|
-
Now you can use the functions in seed_helper.rb
|
23
|
+
Now you can use the functions in seed_helper.rb
|
24
|
+
|
25
|
+
## Deploying to rubygems
|
26
|
+
|
27
|
+
gem push <gempath>
|
data/README.md
CHANGED
@@ -19,6 +19,8 @@ Using SeedHelper, a seed task might look like:
|
|
19
19
|
```ruby
|
20
20
|
# in lib/tasks/seeds/create_roles.rake
|
21
21
|
|
22
|
+
include SeedHelper
|
23
|
+
|
22
24
|
create_seed_task(:create_roles) do
|
23
25
|
|
24
26
|
["Admin", "Regular"].each do |role_name|
|
@@ -34,6 +36,8 @@ end
|
|
34
36
|
|
35
37
|
# in lib/tasks/seeds/create_users.rake
|
36
38
|
|
39
|
+
include SeedHelper
|
40
|
+
|
37
41
|
# Specify a dependency on roles, so that running this task will first
|
38
42
|
# run the create_roles task
|
39
43
|
create_seed_task(:create_users, [:create_roles]) do
|
@@ -50,8 +54,6 @@ create_seed_task(:create_users, [:create_roles]) do
|
|
50
54
|
end
|
51
55
|
```
|
52
56
|
|
53
|
-
Keep in mind that the create_resource requires at least Rails 4.0.2 to run as it uses the `find_by` method.
|
54
|
-
|
55
57
|
## Example: Output
|
56
58
|
|
57
59
|
SeedHelper provides multiple methods for showing output that can be used outside of the `create_resource` method:
|
data/lib/seed_helper.rb
CHANGED
@@ -8,7 +8,7 @@ module SeedHelper
|
|
8
8
|
include SeedHelper::RakeHelper
|
9
9
|
|
10
10
|
def create_resource(resource_class, attributes)
|
11
|
-
if resource = resource_class
|
11
|
+
if resource = find_resource(resource_class, attributes)
|
12
12
|
resource_already_exists(resource)
|
13
13
|
else
|
14
14
|
resource = resource_class.new(attributes)
|
@@ -23,4 +23,16 @@ module SeedHelper
|
|
23
23
|
return resource
|
24
24
|
end
|
25
25
|
|
26
|
+
private
|
27
|
+
|
28
|
+
def find_resource(resource_class, attributes)
|
29
|
+
# Rails 4
|
30
|
+
if resource_class.respond_to?(:find_by)
|
31
|
+
return resource_class.find_by(attributes)
|
32
|
+
# Rails 3
|
33
|
+
else
|
34
|
+
return resource_class.where(attributes).first
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
26
38
|
end
|
data/lib/seed_helper/version.rb
CHANGED