administrate-field-nested_has_many 0.0.1 → 1.3.0
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 +5 -5
- data/.circleci/config.yml +29 -0
- data/.gitignore +4 -0
- data/.ruby-version +1 -0
- data/Appraisals +13 -0
- data/CHANGELOG.md +71 -0
- data/Gemfile +5 -0
- data/README.md +4 -3
- data/Rakefile +24 -0
- data/administrate-field-nested_has_many.gemspec +16 -9
- data/app/assets/stylesheets/administrate-field-nested_has_many/application.css +3 -0
- data/app/assets/stylesheets/administrate-field-nested_has_many/base.scss +14 -0
- data/app/views/fields/nested_has_many/_fields.html.erb +3 -5
- data/app/views/fields/nested_has_many/_form.html.erb +12 -12
- data/app/views/fields/nested_has_many/_show.html.erb +6 -37
- data/app/views/fields/nested_has_many/_show_current.html.erb +44 -0
- data/app/views/fields/nested_has_many/_show_old.html.erb +36 -0
- data/bin/rails +13 -0
- data/config/i18n-tasks.yml +8 -0
- data/config/locales/administrate-field-nested_has_many.en.yml +7 -0
- data/config/locales/administrate-field-nested_has_many.ja.yml +7 -0
- data/config/locales/administrate-field-nested_has_many.pt.yml +7 -0
- data/config/locales/administrate-field-nested_has_many.ru.yml +7 -0
- data/gemfiles/administrate_0.10.gemfile +8 -0
- data/gemfiles/administrate_0.10.gemfile.lock +214 -0
- data/gemfiles/administrate_0.13.gemfile +8 -0
- data/gemfiles/administrate_0.13.gemfile.lock +207 -0
- data/gemfiles/administrate_master.gemfile +8 -0
- data/gemfiles/administrate_master.gemfile.lock +219 -0
- data/lib/administrate/field/nested_has_many.rb +42 -12
- data/spec/dummy/.gitignore +3 -0
- data/spec/dummy/Rakefile +6 -0
- data/spec/dummy/app/assets/config/manifest.js +7 -0
- data/spec/dummy/app/assets/images/.keep +0 -0
- data/spec/dummy/app/assets/javascripts/application.js +14 -0
- data/spec/dummy/app/assets/javascripts/channels/.keep +0 -0
- data/spec/dummy/app/assets/stylesheets/application.css +15 -0
- data/spec/dummy/app/controllers/admin/application_controller.rb +21 -0
- data/spec/dummy/app/controllers/admin/foo/students_controller.rb +21 -0
- data/spec/dummy/app/controllers/admin/schools_controller.rb +21 -0
- data/spec/dummy/app/controllers/application_controller.rb +2 -0
- data/spec/dummy/app/controllers/concerns/.keep +0 -0
- data/spec/dummy/app/dashboards/foo/student_dashboard.rb +51 -0
- data/spec/dummy/app/dashboards/school_dashboard.rb +52 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/mailers/application_mailer.rb +4 -0
- data/spec/dummy/app/models/application_record.rb +3 -0
- data/spec/dummy/app/models/concerns/.keep +0 -0
- data/spec/dummy/app/models/foo/student.rb +3 -0
- data/spec/dummy/app/models/school.rb +4 -0
- data/spec/dummy/app/views/layouts/application.html.erb +15 -0
- data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
- data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/bin/setup +36 -0
- data/spec/dummy/bin/update +31 -0
- data/spec/dummy/bin/yarn +11 -0
- data/spec/dummy/config.ru +5 -0
- data/spec/dummy/config/application.rb +18 -0
- data/spec/dummy/config/boot.rb +5 -0
- data/spec/dummy/config/cable.yml +10 -0
- data/spec/dummy/config/database.yml +12 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +53 -0
- data/spec/dummy/config/environments/test.rb +36 -0
- data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
- data/spec/dummy/config/initializers/assets.rb +14 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/content_security_policy.rb +25 -0
- data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/inflections.rb +16 -0
- data/spec/dummy/config/initializers/mime_types.rb +4 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +33 -0
- data/spec/dummy/config/puma.rb +34 -0
- data/spec/dummy/config/routes.rb +10 -0
- data/spec/dummy/config/spring.rb +6 -0
- data/spec/dummy/config/storage.yml +34 -0
- data/spec/dummy/db/migrate/20180907104642_create_schools.rb +9 -0
- data/spec/dummy/db/migrate/20180907104703_create_students.rb +10 -0
- data/spec/dummy/db/schema.rb +29 -0
- data/spec/dummy/lib/assets/.keep +0 -0
- data/spec/dummy/package.json +5 -0
- data/spec/dummy/public/404.html +67 -0
- data/spec/dummy/public/422.html +67 -0
- data/spec/dummy/public/500.html +66 -0
- data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
- data/spec/dummy/public/apple-touch-icon.png +0 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/storage/.keep +0 -0
- data/spec/factories.rb +9 -0
- data/spec/features/has_many_spec.rb +68 -0
- data/spec/features/landing_spec.rb +10 -0
- data/spec/i18n_spec.rb +29 -0
- data/spec/rails_helper.rb +67 -0
- data/spec/spec_helper.rb +96 -0
- metadata +296 -18
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
GIT
|
|
2
|
+
remote: https://github.com/thoughtbot/administrate
|
|
3
|
+
revision: 32b3cfc6b5e9183fa052e40bf523000d1edf06dd
|
|
4
|
+
branch: master
|
|
5
|
+
specs:
|
|
6
|
+
administrate (0.11.0)
|
|
7
|
+
actionpack (>= 4.2, < 6.0)
|
|
8
|
+
actionview (>= 4.2, < 6.0)
|
|
9
|
+
activerecord (>= 4.2, < 6.0)
|
|
10
|
+
autoprefixer-rails (>= 6.0)
|
|
11
|
+
datetime_picker_rails (~> 0.0.7)
|
|
12
|
+
jquery-rails (>= 4.0)
|
|
13
|
+
kaminari (>= 1.0)
|
|
14
|
+
momentjs-rails (~> 2.8)
|
|
15
|
+
sass-rails (~> 5.0)
|
|
16
|
+
selectize-rails (~> 0.6)
|
|
17
|
+
|
|
18
|
+
PATH
|
|
19
|
+
remote: ..
|
|
20
|
+
specs:
|
|
21
|
+
administrate-field-nested_has_many (1.2.0)
|
|
22
|
+
administrate (> 0.8, < 1)
|
|
23
|
+
cocoon (~> 1.2, >= 1.2.11)
|
|
24
|
+
|
|
25
|
+
GEM
|
|
26
|
+
remote: https://rubygems.org/
|
|
27
|
+
specs:
|
|
28
|
+
actionpack (5.2.2)
|
|
29
|
+
actionview (= 5.2.2)
|
|
30
|
+
activesupport (= 5.2.2)
|
|
31
|
+
rack (~> 2.0)
|
|
32
|
+
rack-test (>= 0.6.3)
|
|
33
|
+
rails-dom-testing (~> 2.0)
|
|
34
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
|
35
|
+
actionview (5.2.2)
|
|
36
|
+
activesupport (= 5.2.2)
|
|
37
|
+
builder (~> 3.1)
|
|
38
|
+
erubi (~> 1.4)
|
|
39
|
+
rails-dom-testing (~> 2.0)
|
|
40
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
|
41
|
+
activemodel (5.2.2)
|
|
42
|
+
activesupport (= 5.2.2)
|
|
43
|
+
activerecord (5.2.2)
|
|
44
|
+
activemodel (= 5.2.2)
|
|
45
|
+
activesupport (= 5.2.2)
|
|
46
|
+
arel (>= 9.0)
|
|
47
|
+
activesupport (5.2.2)
|
|
48
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
49
|
+
i18n (>= 0.7, < 2)
|
|
50
|
+
minitest (~> 5.1)
|
|
51
|
+
tzinfo (~> 1.1)
|
|
52
|
+
addressable (2.6.0)
|
|
53
|
+
public_suffix (>= 2.0.2, < 4.0)
|
|
54
|
+
appraisal (2.2.0)
|
|
55
|
+
bundler
|
|
56
|
+
rake
|
|
57
|
+
thor (>= 0.14.0)
|
|
58
|
+
arel (9.0.0)
|
|
59
|
+
ast (2.4.0)
|
|
60
|
+
autoprefixer-rails (9.4.6)
|
|
61
|
+
execjs
|
|
62
|
+
builder (3.2.3)
|
|
63
|
+
capybara (3.13.2)
|
|
64
|
+
addressable
|
|
65
|
+
mini_mime (>= 0.1.3)
|
|
66
|
+
nokogiri (~> 1.8)
|
|
67
|
+
rack (>= 1.6.0)
|
|
68
|
+
rack-test (>= 0.6.3)
|
|
69
|
+
regexp_parser (~> 1.2)
|
|
70
|
+
xpath (~> 3.2)
|
|
71
|
+
childprocess (3.0.0)
|
|
72
|
+
cocoon (1.2.14)
|
|
73
|
+
concurrent-ruby (1.1.4)
|
|
74
|
+
crass (1.0.4)
|
|
75
|
+
datetime_picker_rails (0.0.7)
|
|
76
|
+
momentjs-rails (>= 2.8.1)
|
|
77
|
+
diff-lcs (1.3)
|
|
78
|
+
erubi (1.8.0)
|
|
79
|
+
execjs (2.7.0)
|
|
80
|
+
factory_bot (4.11.1)
|
|
81
|
+
activesupport (>= 3.0.0)
|
|
82
|
+
ffi (1.10.0)
|
|
83
|
+
highline (2.0.1)
|
|
84
|
+
i18n (1.5.3)
|
|
85
|
+
concurrent-ruby (~> 1.0)
|
|
86
|
+
i18n-tasks (0.9.28)
|
|
87
|
+
activesupport (>= 4.0.2)
|
|
88
|
+
ast (>= 2.1.0)
|
|
89
|
+
erubi
|
|
90
|
+
highline (>= 2.0.0)
|
|
91
|
+
i18n
|
|
92
|
+
parser (>= 2.2.3.0)
|
|
93
|
+
rails-i18n
|
|
94
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
95
|
+
terminal-table (>= 1.5.1)
|
|
96
|
+
jquery-rails (4.3.3)
|
|
97
|
+
rails-dom-testing (>= 1, < 3)
|
|
98
|
+
railties (>= 4.2.0)
|
|
99
|
+
thor (>= 0.14, < 2.0)
|
|
100
|
+
kaminari (1.1.1)
|
|
101
|
+
activesupport (>= 4.1.0)
|
|
102
|
+
kaminari-actionview (= 1.1.1)
|
|
103
|
+
kaminari-activerecord (= 1.1.1)
|
|
104
|
+
kaminari-core (= 1.1.1)
|
|
105
|
+
kaminari-actionview (1.1.1)
|
|
106
|
+
actionview
|
|
107
|
+
kaminari-core (= 1.1.1)
|
|
108
|
+
kaminari-activerecord (1.1.1)
|
|
109
|
+
activerecord
|
|
110
|
+
kaminari-core (= 1.1.1)
|
|
111
|
+
kaminari-core (1.1.1)
|
|
112
|
+
loofah (2.2.3)
|
|
113
|
+
crass (~> 1.0.2)
|
|
114
|
+
nokogiri (>= 1.5.9)
|
|
115
|
+
method_source (0.9.2)
|
|
116
|
+
mini_mime (1.0.1)
|
|
117
|
+
mini_portile2 (2.4.0)
|
|
118
|
+
minitest (5.11.3)
|
|
119
|
+
momentjs-rails (2.20.1)
|
|
120
|
+
railties (>= 3.1)
|
|
121
|
+
nokogiri (1.10.1)
|
|
122
|
+
mini_portile2 (~> 2.4.0)
|
|
123
|
+
parser (2.6.0.0)
|
|
124
|
+
ast (~> 2.4.0)
|
|
125
|
+
pg (1.1.4)
|
|
126
|
+
public_suffix (3.0.3)
|
|
127
|
+
rack (2.0.6)
|
|
128
|
+
rack-test (1.1.0)
|
|
129
|
+
rack (>= 1.0, < 3)
|
|
130
|
+
rails-dom-testing (2.0.3)
|
|
131
|
+
activesupport (>= 4.2.0)
|
|
132
|
+
nokogiri (>= 1.6)
|
|
133
|
+
rails-html-sanitizer (1.0.4)
|
|
134
|
+
loofah (~> 2.2, >= 2.2.2)
|
|
135
|
+
rails-i18n (5.1.2)
|
|
136
|
+
i18n (>= 0.7, < 2)
|
|
137
|
+
railties (>= 5.0, < 6)
|
|
138
|
+
railties (5.2.2)
|
|
139
|
+
actionpack (= 5.2.2)
|
|
140
|
+
activesupport (= 5.2.2)
|
|
141
|
+
method_source
|
|
142
|
+
rake (>= 0.8.7)
|
|
143
|
+
thor (>= 0.19.0, < 2.0)
|
|
144
|
+
rainbow (3.0.0)
|
|
145
|
+
rake (12.3.2)
|
|
146
|
+
rb-fsevent (0.10.3)
|
|
147
|
+
rb-inotify (0.10.0)
|
|
148
|
+
ffi (~> 1.0)
|
|
149
|
+
regexp_parser (1.3.0)
|
|
150
|
+
rspec-core (3.8.0)
|
|
151
|
+
rspec-support (~> 3.8.0)
|
|
152
|
+
rspec-expectations (3.8.2)
|
|
153
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
154
|
+
rspec-support (~> 3.8.0)
|
|
155
|
+
rspec-mocks (3.8.0)
|
|
156
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
157
|
+
rspec-support (~> 3.8.0)
|
|
158
|
+
rspec-rails (3.8.2)
|
|
159
|
+
actionpack (>= 3.0)
|
|
160
|
+
activesupport (>= 3.0)
|
|
161
|
+
railties (>= 3.0)
|
|
162
|
+
rspec-core (~> 3.8.0)
|
|
163
|
+
rspec-expectations (~> 3.8.0)
|
|
164
|
+
rspec-mocks (~> 3.8.0)
|
|
165
|
+
rspec-support (~> 3.8.0)
|
|
166
|
+
rspec-support (3.8.0)
|
|
167
|
+
rubyzip (2.2.0)
|
|
168
|
+
sass (3.7.3)
|
|
169
|
+
sass-listen (~> 4.0.0)
|
|
170
|
+
sass-listen (4.0.0)
|
|
171
|
+
rb-fsevent (~> 0.9, >= 0.9.4)
|
|
172
|
+
rb-inotify (~> 0.9, >= 0.9.7)
|
|
173
|
+
sass-rails (5.0.7)
|
|
174
|
+
railties (>= 4.0.0, < 6)
|
|
175
|
+
sass (~> 3.1)
|
|
176
|
+
sprockets (>= 2.8, < 4.0)
|
|
177
|
+
sprockets-rails (>= 2.0, < 4.0)
|
|
178
|
+
tilt (>= 1.1, < 3)
|
|
179
|
+
selectize-rails (0.12.6)
|
|
180
|
+
selenium-webdriver (3.142.7)
|
|
181
|
+
childprocess (>= 0.5, < 4.0)
|
|
182
|
+
rubyzip (>= 1.2.2)
|
|
183
|
+
sprockets (3.7.2)
|
|
184
|
+
concurrent-ruby (~> 1.0)
|
|
185
|
+
rack (> 1, < 3)
|
|
186
|
+
sprockets-rails (3.2.1)
|
|
187
|
+
actionpack (>= 4.0)
|
|
188
|
+
activesupport (>= 4.0)
|
|
189
|
+
sprockets (>= 3.0.0)
|
|
190
|
+
sqlite3 (1.3.13)
|
|
191
|
+
terminal-table (1.8.0)
|
|
192
|
+
unicode-display_width (~> 1.1, >= 1.1.1)
|
|
193
|
+
thor (0.20.3)
|
|
194
|
+
thread_safe (0.3.6)
|
|
195
|
+
tilt (2.0.9)
|
|
196
|
+
tzinfo (1.2.5)
|
|
197
|
+
thread_safe (~> 0.1)
|
|
198
|
+
unicode-display_width (1.4.1)
|
|
199
|
+
xpath (3.2.0)
|
|
200
|
+
nokogiri (~> 1.8)
|
|
201
|
+
|
|
202
|
+
PLATFORMS
|
|
203
|
+
ruby
|
|
204
|
+
|
|
205
|
+
DEPENDENCIES
|
|
206
|
+
administrate!
|
|
207
|
+
administrate-field-nested_has_many!
|
|
208
|
+
appraisal
|
|
209
|
+
capybara
|
|
210
|
+
factory_bot
|
|
211
|
+
i18n-tasks
|
|
212
|
+
pg
|
|
213
|
+
rake
|
|
214
|
+
rspec-rails
|
|
215
|
+
selenium-webdriver
|
|
216
|
+
sqlite3
|
|
217
|
+
|
|
218
|
+
BUNDLED WITH
|
|
219
|
+
1.17.3
|
|
@@ -1,16 +1,23 @@
|
|
|
1
1
|
require "administrate/field/has_many"
|
|
2
2
|
require "administrate/page/form"
|
|
3
3
|
require "rails"
|
|
4
|
+
require "administrate/engine"
|
|
5
|
+
require "administrate/version"
|
|
6
|
+
require "cocoon"
|
|
4
7
|
|
|
5
8
|
module Administrate
|
|
6
9
|
module Field
|
|
7
10
|
class NestedHasMany < Administrate::Field::HasMany
|
|
8
|
-
VERSION = "0.0.1"
|
|
9
|
-
|
|
10
11
|
class Engine < ::Rails::Engine
|
|
12
|
+
Administrate::Engine.add_javascript(
|
|
13
|
+
"administrate-field-nested_has_many/application",
|
|
14
|
+
)
|
|
15
|
+
Administrate::Engine.add_stylesheet(
|
|
16
|
+
"administrate-field-nested_has_many/application",
|
|
17
|
+
)
|
|
11
18
|
end
|
|
12
19
|
|
|
13
|
-
DEFAULT_ATTRIBUTES =
|
|
20
|
+
DEFAULT_ATTRIBUTES = %i(id _destroy).freeze
|
|
14
21
|
|
|
15
22
|
def nested_fields
|
|
16
23
|
associated_form.attributes.reject do |nested_field|
|
|
@@ -18,23 +25,39 @@ module Administrate
|
|
|
18
25
|
end
|
|
19
26
|
end
|
|
20
27
|
|
|
28
|
+
def nested_fields_for_builder(form_builder)
|
|
29
|
+
return nested_fields unless form_builder.index.is_a? Integer
|
|
30
|
+
|
|
31
|
+
nested_fields.each do |nested_field|
|
|
32
|
+
next if nested_field.resource.blank?
|
|
33
|
+
|
|
34
|
+
# inject current data into field
|
|
35
|
+
resource = data[form_builder.index]
|
|
36
|
+
nested_field.instance_variable_set(
|
|
37
|
+
"@data",
|
|
38
|
+
resource.send(nested_field.attribute),
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
21
43
|
def to_s
|
|
22
44
|
data
|
|
23
45
|
end
|
|
24
46
|
|
|
25
|
-
def self.dashboard_for_resource(resource)
|
|
26
|
-
|
|
47
|
+
def self.dashboard_for_resource(resource, options)
|
|
48
|
+
class_name = options && options[:class_name] || resource.to_s.classify
|
|
49
|
+
"#{class_name}Dashboard".constantize
|
|
27
50
|
end
|
|
28
51
|
|
|
29
|
-
def self.associated_attributes(associated_resource)
|
|
30
|
-
|
|
31
|
-
|
|
52
|
+
def self.associated_attributes(associated_resource, options)
|
|
53
|
+
dashboard_class = dashboard_for_resource(associated_resource, options)
|
|
54
|
+
DEFAULT_ATTRIBUTES + dashboard_class.new.permitted_attributes
|
|
32
55
|
end
|
|
33
56
|
|
|
34
|
-
def self.permitted_attribute(associated_resource)
|
|
57
|
+
def self.permitted_attribute(associated_resource, options = nil)
|
|
35
58
|
{
|
|
36
59
|
"#{associated_resource}_attributes".to_sym =>
|
|
37
|
-
associated_attributes(associated_resource),
|
|
60
|
+
associated_attributes(associated_resource, options),
|
|
38
61
|
}
|
|
39
62
|
end
|
|
40
63
|
|
|
@@ -43,15 +66,22 @@ module Administrate
|
|
|
43
66
|
end
|
|
44
67
|
|
|
45
68
|
def association_name
|
|
46
|
-
|
|
69
|
+
options.fetch(
|
|
70
|
+
:association_name,
|
|
71
|
+
associated_class_name.underscore.pluralize[/([^\/]*)$/, 1],
|
|
72
|
+
)
|
|
47
73
|
end
|
|
48
74
|
|
|
49
75
|
def associated_form
|
|
50
|
-
Administrate::Page::Form.new(associated_dashboard,
|
|
76
|
+
Administrate::Page::Form.new(associated_dashboard, new_resource)
|
|
51
77
|
end
|
|
52
78
|
|
|
53
79
|
private
|
|
54
80
|
|
|
81
|
+
def new_resource
|
|
82
|
+
@new_resource ||= associated_class_name.constantize.new
|
|
83
|
+
end
|
|
84
|
+
|
|
55
85
|
def skipped_fields
|
|
56
86
|
Array(options[:skip])
|
|
57
87
|
end
|
data/spec/dummy/Rakefile
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
//= link_tree ../images
|
|
2
|
+
//= link_directory ../javascripts .js
|
|
3
|
+
//= link administrate/application.js
|
|
4
|
+
//= link administrate-field-nested_has_many/application.js
|
|
5
|
+
//= link_directory ../stylesheets .css
|
|
6
|
+
//= link administrate/application.css
|
|
7
|
+
//= link administrate-field-nested_has_many/application.css
|
|
File without changes
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
|
2
|
+
// listed below.
|
|
3
|
+
//
|
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
|
5
|
+
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
|
|
6
|
+
//
|
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
|
8
|
+
// compiled file. JavaScript code in this file should be added after the last require_* statement.
|
|
9
|
+
//
|
|
10
|
+
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
|
|
11
|
+
// about supported directives.
|
|
12
|
+
//
|
|
13
|
+
//= require rails-ujs
|
|
14
|
+
//= require_tree .
|
|
File without changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
|
3
|
+
* listed below.
|
|
4
|
+
*
|
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
|
6
|
+
* or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
|
|
7
|
+
*
|
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
|
|
9
|
+
* compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
|
|
10
|
+
* files in this directory. Styles in this file should be added after the last require_* statement.
|
|
11
|
+
* It is generally better to create a new file per style scope.
|
|
12
|
+
*
|
|
13
|
+
*= require_tree .
|
|
14
|
+
*= require_self
|
|
15
|
+
*/
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# All Administrate controllers inherit from this `Admin::ApplicationController`,
|
|
2
|
+
# making it the ideal place to put authentication logic or other
|
|
3
|
+
# before_actions.
|
|
4
|
+
#
|
|
5
|
+
# If you want to add pagination or other controller-level concerns,
|
|
6
|
+
# you're free to overwrite the RESTful controller actions.
|
|
7
|
+
module Admin
|
|
8
|
+
class ApplicationController < Administrate::ApplicationController
|
|
9
|
+
before_action :authenticate_admin
|
|
10
|
+
|
|
11
|
+
def authenticate_admin
|
|
12
|
+
# TODO Add authentication logic here.
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# Override this value to specify the number of elements to display at a time
|
|
16
|
+
# on index pages. Defaults to 20.
|
|
17
|
+
# def records_per_page
|
|
18
|
+
# params[:per_page] || 20
|
|
19
|
+
# end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Admin
|
|
2
|
+
class Foo::StudentsController < Admin::ApplicationController
|
|
3
|
+
# To customize the behavior of this controller,
|
|
4
|
+
# you can overwrite any of the RESTful actions. For example:
|
|
5
|
+
#
|
|
6
|
+
# def index
|
|
7
|
+
# super
|
|
8
|
+
# @resources = Student.
|
|
9
|
+
# page(params[:page]).
|
|
10
|
+
# per(10)
|
|
11
|
+
# end
|
|
12
|
+
|
|
13
|
+
# Define a custom finder by overriding the `find_resource` method:
|
|
14
|
+
# def find_resource(param)
|
|
15
|
+
# Student.find_by!(slug: param)
|
|
16
|
+
# end
|
|
17
|
+
|
|
18
|
+
# See https://administrate-prototype.herokuapp.com/customizing_controller_actions
|
|
19
|
+
# for more information
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Admin
|
|
2
|
+
class SchoolsController < Admin::ApplicationController
|
|
3
|
+
# To customize the behavior of this controller,
|
|
4
|
+
# you can overwrite any of the RESTful actions. For example:
|
|
5
|
+
#
|
|
6
|
+
# def index
|
|
7
|
+
# super
|
|
8
|
+
# @resources = School.
|
|
9
|
+
# page(params[:page]).
|
|
10
|
+
# per(10)
|
|
11
|
+
# end
|
|
12
|
+
|
|
13
|
+
# Define a custom finder by overriding the `find_resource` method:
|
|
14
|
+
# def find_resource(param)
|
|
15
|
+
# School.find_by!(slug: param)
|
|
16
|
+
# end
|
|
17
|
+
|
|
18
|
+
# See https://administrate-prototype.herokuapp.com/customizing_controller_actions
|
|
19
|
+
# for more information
|
|
20
|
+
end
|
|
21
|
+
end
|