garden_variety 1.1.2 → 1.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/README.md +6 -2
- data/lib/garden_variety/actions.rb +6 -2
- data/lib/garden_variety/controller.rb +8 -6
- data/lib/garden_variety/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c633defda33a2f8bcd26d96f58c1bfea52c2fb9c
|
4
|
+
data.tar.gz: 988988d42d10f00c3f55d5690b39ec46710ed68a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8eee6bea8231197d118f405c320a58af2a4d73c08f2ce65ad3373142afdf895585ce528397be97640e4cabb3631c9652c1dd58c84e1dec162f732bf558aa96c1
|
7
|
+
data.tar.gz: 643ca6a75d537943723a1ee4fb27af838bd666dd787c08e7dea53898282201fa735be86de7acebf4f4f9a5791482a508b83919573ec3943068c30291802dad87
|
data/README.md
CHANGED
@@ -37,8 +37,12 @@ class PostsController < ApplicationController
|
|
37
37
|
end
|
38
38
|
|
39
39
|
def new
|
40
|
-
|
41
|
-
|
40
|
+
if params.key?(resource_class.model_name.param_key)
|
41
|
+
self.resource = vest(new_resource)
|
42
|
+
else
|
43
|
+
self.resource = new_resource
|
44
|
+
authorize(resource)
|
45
|
+
end
|
42
46
|
end
|
43
47
|
|
44
48
|
def create
|
@@ -22,8 +22,12 @@ module GardenVariety
|
|
22
22
|
# Garden variety controller +new+ action.
|
23
23
|
# @return [void]
|
24
24
|
def new
|
25
|
-
|
26
|
-
|
25
|
+
if params.key?(resource_class.model_name.param_key)
|
26
|
+
self.resource = vest(new_resource)
|
27
|
+
else
|
28
|
+
self.resource = new_resource
|
29
|
+
authorize(resource)
|
30
|
+
end
|
27
31
|
end
|
28
32
|
end
|
29
33
|
|
@@ -98,7 +98,9 @@ module GardenVariety
|
|
98
98
|
# @param actions [Array<:index, :show, :new, :create, :edit, :update, :destroy>]
|
99
99
|
# @param resources [Symbol, String]
|
100
100
|
# @return [void]
|
101
|
-
def garden_variety(*actions, resources:
|
101
|
+
def garden_variety(*actions, resources: controller_path)
|
102
|
+
resources_attr = resources.to_s.underscore.tr("/", "_")
|
103
|
+
|
102
104
|
class_eval <<-CODE
|
103
105
|
private
|
104
106
|
|
@@ -107,19 +109,19 @@ module GardenVariety
|
|
107
109
|
end
|
108
110
|
|
109
111
|
def resources
|
110
|
-
@#{
|
112
|
+
@#{resources_attr}
|
111
113
|
end
|
112
114
|
|
113
115
|
def resources=(models)
|
114
|
-
@#{
|
116
|
+
@#{resources_attr} = models
|
115
117
|
end
|
116
118
|
|
117
119
|
def resource
|
118
|
-
@#{
|
120
|
+
@#{resources_attr.singularize}
|
119
121
|
end
|
120
122
|
|
121
123
|
def resource=(model)
|
122
|
-
@#{
|
124
|
+
@#{resources_attr.singularize} = model
|
123
125
|
end
|
124
126
|
CODE
|
125
127
|
|
@@ -143,7 +145,7 @@ module GardenVariety
|
|
143
145
|
#
|
144
146
|
# @return [Class]
|
145
147
|
def resource_class
|
146
|
-
@resource_class ||=
|
148
|
+
@resource_class ||= controller_path.classify.constantize
|
147
149
|
end
|
148
150
|
|
149
151
|
# @!visibility public
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: garden_variety
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: '1.2'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Hefner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|