activeadmin 1.3.1 → 1.4.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.
Files changed (333) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +467 -0
  3. data/.gitignore +2 -5
  4. data/.rspec +1 -0
  5. data/.rspec_parallel +2 -0
  6. data/.rubocop.yml +25 -7
  7. data/.simplecov +4 -6
  8. data/CHANGELOG.md +175 -83
  9. data/CODE_OF_CONDUCT.md +64 -12
  10. data/CONTRIBUTING.md +77 -40
  11. data/Gemfile +7 -55
  12. data/Gemfile.common +53 -0
  13. data/Gemfile.lock +431 -0
  14. data/README.md +39 -18
  15. data/Rakefile +1 -32
  16. data/app/assets/stylesheets/active_admin/_forms.scss +1 -1
  17. data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
  18. data/app/views/active_admin/devise/confirmations/new.html.erb +1 -1
  19. data/app/views/active_admin/devise/passwords/edit.html.erb +1 -1
  20. data/app/views/active_admin/devise/passwords/new.html.erb +1 -1
  21. data/app/views/active_admin/devise/registrations/new.html.erb +1 -1
  22. data/app/views/active_admin/devise/sessions/new.html.erb +1 -1
  23. data/app/views/active_admin/devise/unlocks/new.html.erb +1 -1
  24. data/app/views/layouts/active_admin_logged_out.html.erb +1 -1
  25. data/bin/install_chromedriver.sh +17 -0
  26. data/config/locales/de.yml +10 -0
  27. data/config/locales/en.yml +19 -1
  28. data/config/locales/es.yml +20 -1
  29. data/config/locales/fi.yml +1 -1
  30. data/config/locales/it.yml +4 -0
  31. data/config/locales/nb.yml +15 -5
  32. data/config/locales/nl.yml +11 -0
  33. data/config/locales/pl.yml +71 -3
  34. data/config/locales/ru.yml +2 -0
  35. data/config/locales/tr.yml +9 -0
  36. data/config/locales/zh-CN.yml +33 -5
  37. data/config/mdl_style.rb +2 -0
  38. data/cucumber.yml +7 -3
  39. data/docs/.gitignore +1 -0
  40. data/docs/1-general-configuration.md +16 -1
  41. data/docs/10-custom-pages.md +14 -0
  42. data/docs/12-arbre-components.md +28 -1
  43. data/docs/13-authorization-adapter.md +36 -17
  44. data/docs/2-resource-customization.md +8 -3
  45. data/docs/3-index-pages.md +17 -0
  46. data/docs/3-index-pages/custom-index.md +1 -1
  47. data/docs/3-index-pages/index-as-blog.md +1 -1
  48. data/docs/3-index-pages/index-as-table.md +5 -5
  49. data/docs/5-forms.md +16 -2
  50. data/docs/8-custom-actions.md +11 -0
  51. data/docs/Gemfile +2 -0
  52. data/docs/Gemfile.lock +249 -0
  53. data/docs/_config.yml +1 -1
  54. data/docs/_includes/toc.html +1 -1
  55. data/docs/_includes/top-menu.html +9 -1
  56. data/docs/documentation.md +1 -1
  57. data/docs/images/tidelift.svg +14 -0
  58. data/docs/stylesheets/main.css +26 -2
  59. data/gemfiles/rails_42.gemfile +2 -2
  60. data/gemfiles/rails_42.gemfile.lock +410 -0
  61. data/gemfiles/rails_50.gemfile +2 -2
  62. data/gemfiles/rails_50.gemfile.lock +424 -0
  63. data/gemfiles/rails_51.gemfile +2 -2
  64. data/gemfiles/rails_51.gemfile.lock +423 -0
  65. data/lib/active_admin/abstract_view_factory.rb +13 -51
  66. data/lib/active_admin/application.rb +42 -142
  67. data/lib/active_admin/application_settings.rb +39 -0
  68. data/lib/active_admin/base_controller/authorization.rb +1 -2
  69. data/lib/active_admin/batch_actions/controller.rb +1 -1
  70. data/lib/active_admin/dependency.rb +8 -0
  71. data/lib/active_admin/deprecation.rb +0 -25
  72. data/lib/active_admin/dynamic_setting.rb +38 -0
  73. data/lib/active_admin/dynamic_settings_node.rb +28 -0
  74. data/lib/active_admin/engine.rb +5 -0
  75. data/lib/active_admin/filters/active_filter.rb +1 -1
  76. data/lib/active_admin/filters/resource_extension.rb +1 -1
  77. data/lib/active_admin/form_builder.rb +95 -60
  78. data/lib/active_admin/inputs/datepicker_input.rb +7 -0
  79. data/lib/active_admin/menu.rb +2 -8
  80. data/lib/active_admin/menu_item.rb +3 -31
  81. data/lib/active_admin/namespace.rb +18 -6
  82. data/lib/active_admin/namespace_settings.rb +107 -0
  83. data/lib/active_admin/orm/active_record/comments.rb +11 -0
  84. data/lib/active_admin/orm/active_record/comments/comment.rb +1 -1
  85. data/lib/active_admin/resource/action_items.rb +6 -1
  86. data/lib/active_admin/resource_controller/decorators.rb +3 -3
  87. data/lib/active_admin/resource_controller/scoping.rb +1 -1
  88. data/lib/active_admin/router.rb +89 -84
  89. data/lib/active_admin/scope.rb +5 -1
  90. data/lib/active_admin/settings_node.rb +19 -0
  91. data/lib/active_admin/version.rb +1 -1
  92. data/lib/active_admin/views/components/active_admin_form.rb +2 -3
  93. data/lib/active_admin/views/components/menu.rb +32 -0
  94. data/lib/active_admin/views/components/menu_item.rb +58 -0
  95. data/lib/active_admin/views/components/scopes.rb +11 -4
  96. data/lib/active_admin/views/components/sidebar.rb +13 -0
  97. data/lib/active_admin/views/components/site_title.rb +5 -6
  98. data/lib/active_admin/views/components/table_for.rb +1 -10
  99. data/lib/active_admin/views/components/tabs.rb +4 -1
  100. data/lib/active_admin/views/footer.rb +2 -6
  101. data/lib/active_admin/views/header.rb +3 -15
  102. data/lib/active_admin/views/index_as_blog.rb +1 -1
  103. data/lib/active_admin/views/index_as_grid.rb +25 -25
  104. data/lib/active_admin/views/index_as_table.rb +6 -6
  105. data/lib/active_admin/views/pages/base.rb +27 -53
  106. data/lib/active_admin/views/tabbed_navigation.rb +4 -59
  107. data/lib/bug_report_templates/active_admin_master.rb +2 -3
  108. data/tasks/application_generator.rb +48 -0
  109. data/tasks/gemfiles.rake +8 -0
  110. data/tasks/lint.rake +96 -7
  111. data/tasks/local.rake +10 -8
  112. data/tasks/test.rake +30 -16
  113. metadata +26 -440
  114. data/.travis.yml +0 -51
  115. data/features/action_item.feature +0 -73
  116. data/features/authorization.feature +0 -64
  117. data/features/authorization_cancan.feature +0 -52
  118. data/features/authorization_pundit.feature +0 -37
  119. data/features/belongs_to.feature +0 -124
  120. data/features/breadcrumb.feature +0 -75
  121. data/features/comments/commenting.feature +0 -178
  122. data/features/comments/viewing_index.feature +0 -19
  123. data/features/create_another.feature +0 -55
  124. data/features/dashboard.feature +0 -16
  125. data/features/decorators.feature +0 -43
  126. data/features/development_reloading.feature +0 -28
  127. data/features/edit_page.feature +0 -116
  128. data/features/favicon.feature +0 -20
  129. data/features/first_boot.feature +0 -16
  130. data/features/footer.feature +0 -28
  131. data/features/global_navigation.feature +0 -29
  132. data/features/i18n.feature +0 -55
  133. data/features/index/batch_actions.feature +0 -218
  134. data/features/index/filters.feature +0 -250
  135. data/features/index/format_as_csv.feature +0 -220
  136. data/features/index/formats.feature +0 -88
  137. data/features/index/index_as_block.feature +0 -15
  138. data/features/index/index_as_blog.feature +0 -69
  139. data/features/index/index_as_grid.feature +0 -45
  140. data/features/index/index_as_table.feature +0 -291
  141. data/features/index/index_blank_slate.feature +0 -83
  142. data/features/index/index_parameters.feature +0 -75
  143. data/features/index/index_scope_to.feature +0 -56
  144. data/features/index/index_scopes.feature +0 -285
  145. data/features/index/page_title.feature +0 -41
  146. data/features/index/pagination.feature +0 -63
  147. data/features/index/switch_index_view.feature +0 -73
  148. data/features/menu.feature +0 -72
  149. data/features/meta_tags.feature +0 -21
  150. data/features/new_page.feature +0 -136
  151. data/features/registering_assets.feature +0 -38
  152. data/features/registering_pages.feature +0 -237
  153. data/features/registering_resources.feature +0 -33
  154. data/features/renamed_resource.feature +0 -30
  155. data/features/root_to.feature +0 -17
  156. data/features/show/attributes_table_title.feature +0 -54
  157. data/features/show/columns.feature +0 -40
  158. data/features/show/default_content.feature +0 -44
  159. data/features/show/page_title.feature +0 -58
  160. data/features/show/tabs.feature +0 -33
  161. data/features/sidebar_sections.feature +0 -210
  162. data/features/site_title.feature +0 -47
  163. data/features/specifying_actions.feature +0 -118
  164. data/features/step_definitions/action_item_steps.rb +0 -7
  165. data/features/step_definitions/action_link_steps.rb +0 -19
  166. data/features/step_definitions/additional_web_steps.rb +0 -81
  167. data/features/step_definitions/asset_steps.rb +0 -15
  168. data/features/step_definitions/attribute_steps.rb +0 -18
  169. data/features/step_definitions/attributes_table_title_steps.rb +0 -11
  170. data/features/step_definitions/batch_action_steps.rb +0 -81
  171. data/features/step_definitions/blog_steps.rb +0 -3
  172. data/features/step_definitions/breadcrumb_steps.rb +0 -3
  173. data/features/step_definitions/column_steps.rb +0 -8
  174. data/features/step_definitions/comment_steps.rb +0 -32
  175. data/features/step_definitions/configuration_steps.rb +0 -100
  176. data/features/step_definitions/dashboard_steps.rb +0 -15
  177. data/features/step_definitions/factory_steps.rb +0 -35
  178. data/features/step_definitions/filter_steps.rb +0 -47
  179. data/features/step_definitions/flash_steps.rb +0 -11
  180. data/features/step_definitions/footer_steps.rb +0 -11
  181. data/features/step_definitions/format_steps.rb +0 -56
  182. data/features/step_definitions/i18n_steps.rb +0 -11
  183. data/features/step_definitions/index_scope_steps.rb +0 -29
  184. data/features/step_definitions/index_views_steps.rb +0 -3
  185. data/features/step_definitions/layout_steps.rb +0 -3
  186. data/features/step_definitions/member_link_steps.rb +0 -7
  187. data/features/step_definitions/menu_steps.rb +0 -11
  188. data/features/step_definitions/meta_tag_steps.rb +0 -3
  189. data/features/step_definitions/pagination_steps.rb +0 -15
  190. data/features/step_definitions/sidebar_steps.rb +0 -11
  191. data/features/step_definitions/site_title_steps.rb +0 -17
  192. data/features/step_definitions/tab_steps.rb +0 -8
  193. data/features/step_definitions/table_steps.rb +0 -116
  194. data/features/step_definitions/user_steps.rb +0 -52
  195. data/features/step_definitions/web_steps.rb +0 -86
  196. data/features/sti_resource.feature +0 -65
  197. data/features/strong_parameters.feature +0 -69
  198. data/features/support/env.rb +0 -122
  199. data/features/support/paths.rb +0 -73
  200. data/features/support/regular_env.rb +0 -7
  201. data/features/support/reload_env.rb +0 -7
  202. data/features/support/selectors.rb +0 -45
  203. data/features/users/logging_in.feature +0 -36
  204. data/features/users/logging_out.feature +0 -13
  205. data/features/users/resetting_password.feature +0 -34
  206. data/gemfiles/rails_52.gemfile +0 -11
  207. data/lib/active_admin/helpers/settings.rb +0 -114
  208. data/spec/bug_report_templates_spec.rb +0 -26
  209. data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
  210. data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
  211. data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
  212. data/spec/javascripts/fixtures/checkboxes.html +0 -9
  213. data/spec/javascripts/fixtures/flashes.html +0 -2
  214. data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
  215. data/spec/javascripts/helpers/SpecHelper.js +0 -3
  216. data/spec/javascripts/support/jasmine.yml +0 -74
  217. data/spec/javascripts/support/jasmine_runner.rb +0 -19
  218. data/spec/rails_helper.rb +0 -59
  219. data/spec/requests/default_namespace_spec.rb +0 -81
  220. data/spec/requests/memory_spec.rb +0 -25
  221. data/spec/requests/stylesheets_spec.rb +0 -18
  222. data/spec/spec_helper.rb +0 -1
  223. data/spec/support/active_admin_integration_spec_helper.rb +0 -73
  224. data/spec/support/active_admin_request_helpers.rb +0 -39
  225. data/spec/support/rails_template.rb +0 -153
  226. data/spec/support/rails_template_with_data.rb +0 -327
  227. data/spec/support/templates/admin/stores.rb +0 -7
  228. data/spec/support/templates/en.yml +0 -8
  229. data/spec/support/templates/manifest.js +0 -3
  230. data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
  231. data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
  232. data/spec/support/templates/policies/admin_user_policy.rb +0 -11
  233. data/spec/support/templates/policies/application_policy.rb +0 -44
  234. data/spec/support/templates/policies/category_policy.rb +0 -7
  235. data/spec/support/templates/policies/post_policy.rb +0 -15
  236. data/spec/support/templates/policies/store_policy.rb +0 -11
  237. data/spec/support/templates/policies/user_policy.rb +0 -11
  238. data/spec/support/templates/post_decorator.rb +0 -24
  239. data/spec/unit/abstract_view_factory_spec.rb +0 -78
  240. data/spec/unit/action_builder_spec.rb +0 -158
  241. data/spec/unit/active_admin_spec.rb +0 -11
  242. data/spec/unit/application_spec.rb +0 -184
  243. data/spec/unit/asset_registration_spec.rb +0 -81
  244. data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
  245. data/spec/unit/authorization/controller_authorization_spec.rb +0 -43
  246. data/spec/unit/authorization/index_overriding_spec.rb +0 -23
  247. data/spec/unit/auto_link_spec.rb +0 -93
  248. data/spec/unit/batch_actions/resource_spec.rb +0 -84
  249. data/spec/unit/batch_actions/settings_spec.rb +0 -61
  250. data/spec/unit/belongs_to_spec.rb +0 -76
  251. data/spec/unit/cancan_adapter_spec.rb +0 -43
  252. data/spec/unit/comments_spec.rb +0 -176
  253. data/spec/unit/component_spec.rb +0 -18
  254. data/spec/unit/config_shared_examples.rb +0 -59
  255. data/spec/unit/controller_filters_spec.rb +0 -41
  256. data/spec/unit/csv_builder_spec.rb +0 -313
  257. data/spec/unit/dependency_spec.rb +0 -135
  258. data/spec/unit/devise_spec.rb +0 -110
  259. data/spec/unit/dsl_spec.rb +0 -120
  260. data/spec/unit/filters/active_filter_spec.rb +0 -189
  261. data/spec/unit/filters/active_spec.rb +0 -24
  262. data/spec/unit/filters/filter_form_builder_spec.rb +0 -524
  263. data/spec/unit/filters/resource_spec.rb +0 -128
  264. data/spec/unit/form_builder_spec.rb +0 -990
  265. data/spec/unit/generators/install_spec.rb +0 -31
  266. data/spec/unit/helpers/collection_spec.rb +0 -68
  267. data/spec/unit/helpers/output_safety_helper_spec.rb +0 -79
  268. data/spec/unit/helpers/scope_chain_spec.rb +0 -35
  269. data/spec/unit/helpers/settings_spec.rb +0 -30
  270. data/spec/unit/i18n_spec.rb +0 -29
  271. data/spec/unit/localizers/resource_localizer_spec.rb +0 -36
  272. data/spec/unit/menu_collection_spec.rb +0 -62
  273. data/spec/unit/menu_item_spec.rb +0 -141
  274. data/spec/unit/menu_spec.rb +0 -71
  275. data/spec/unit/namespace/authorization_spec.rb +0 -27
  276. data/spec/unit/namespace/register_page_spec.rb +0 -99
  277. data/spec/unit/namespace/register_resource_spec.rb +0 -162
  278. data/spec/unit/namespace_spec.rb +0 -124
  279. data/spec/unit/order_clause_spec.rb +0 -81
  280. data/spec/unit/page_controller_spec.rb +0 -5
  281. data/spec/unit/page_spec.rb +0 -128
  282. data/spec/unit/pretty_format_spec.rb +0 -82
  283. data/spec/unit/pundit_adapter_spec.rb +0 -98
  284. data/spec/unit/resource/action_items_spec.rb +0 -69
  285. data/spec/unit/resource/attributes_spec.rb +0 -49
  286. data/spec/unit/resource/includes_spec.rb +0 -21
  287. data/spec/unit/resource/menu_spec.rb +0 -18
  288. data/spec/unit/resource/naming_spec.rb +0 -122
  289. data/spec/unit/resource/ordering_spec.rb +0 -35
  290. data/spec/unit/resource/page_presenters_spec.rb +0 -44
  291. data/spec/unit/resource/pagination_spec.rb +0 -38
  292. data/spec/unit/resource/routes_spec.rb +0 -125
  293. data/spec/unit/resource/scopes_spec.rb +0 -50
  294. data/spec/unit/resource/sidebars_spec.rb +0 -43
  295. data/spec/unit/resource_collection_spec.rb +0 -175
  296. data/spec/unit/resource_controller/data_access_spec.rb +0 -234
  297. data/spec/unit/resource_controller/decorators_spec.rb +0 -94
  298. data/spec/unit/resource_controller/sidebars_spec.rb +0 -37
  299. data/spec/unit/resource_controller_spec.rb +0 -273
  300. data/spec/unit/resource_registration_spec.rb +0 -61
  301. data/spec/unit/resource_spec.rb +0 -320
  302. data/spec/unit/routing_spec.rb +0 -211
  303. data/spec/unit/scope_spec.rb +0 -209
  304. data/spec/unit/settings_spec.rb +0 -117
  305. data/spec/unit/view_factory_spec.rb +0 -19
  306. data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -253
  307. data/spec/unit/view_helpers/display_helper_spec.rb +0 -203
  308. data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
  309. data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
  310. data/spec/unit/view_helpers/flash_helper_spec.rb +0 -24
  311. data/spec/unit/view_helpers/form_helper_spec.rb +0 -42
  312. data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -138
  313. data/spec/unit/views/components/attributes_table_spec.rb +0 -271
  314. data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
  315. data/spec/unit/views/components/blank_slate_spec.rb +0 -27
  316. data/spec/unit/views/components/columns_spec.rb +0 -187
  317. data/spec/unit/views/components/index_list_spec.rb +0 -49
  318. data/spec/unit/views/components/index_table_for_spec.rb +0 -127
  319. data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
  320. data/spec/unit/views/components/panel_spec.rb +0 -58
  321. data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
  322. data/spec/unit/views/components/site_title_spec.rb +0 -76
  323. data/spec/unit/views/components/status_tag_spec.rb +0 -265
  324. data/spec/unit/views/components/table_for_spec.rb +0 -436
  325. data/spec/unit/views/components/tabs_spec.rb +0 -67
  326. data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
  327. data/spec/unit/views/index_as_blog_spec.rb +0 -76
  328. data/spec/unit/views/pages/form_spec.rb +0 -54
  329. data/spec/unit/views/pages/index_spec.rb +0 -60
  330. data/spec/unit/views/pages/layout_spec.rb +0 -59
  331. data/spec/unit/views/pages/show_spec.rb +0 -32
  332. data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
  333. data/tasks/parallel_tests.rake +0 -66
@@ -116,10 +116,15 @@ config/locales/[en].yml:
116
116
  en:
117
117
  active_admin:
118
118
  resources:
119
- offer:
120
- new_model: 'Make an Offer'
119
+ offer: # Registered resource
120
+ new_model: 'Make an Offer' # new action item
121
+ edit_model: 'Change Offer' # edit action item
122
+ delete_model: 'Cancel Offer' # delete action item
121
123
  ```
122
124
 
125
+ See the [default en.yml](/config/locales/en.yml) locale file for
126
+ existing translations and examples.
127
+
123
128
  ## Rename the Resource
124
129
 
125
130
  By default, any references to the resource (menu, routes, buttons, etc) in the
@@ -320,7 +325,7 @@ end
320
325
 
321
326
  ## Eager loading
322
327
 
323
- A common way to increase page performance is to elimate N+1 queries by eager
328
+ A common way to increase page performance is to eliminate N+1 queries by eager
324
329
  loading associations:
325
330
 
326
331
  ```ruby
@@ -214,6 +214,23 @@ end
214
214
  Scopes can be labelled with a translation, e.g.
215
215
  `activerecord.scopes.invoice.expired`.
216
216
 
217
+ ### Scopes groups
218
+
219
+ You can assign group names to scopes to keep related scopes together and separate them from the rest.
220
+
221
+ ```ruby
222
+ # a scope in the default group
223
+ scope :all
224
+
225
+ # two scopes used to filter by status
226
+ scope :active, group: :status
227
+ scope :inactive, group: :status
228
+
229
+ # two scopes used to filter by date
230
+ scope :today, group: :date
231
+ scope :tomorrow, group: :date
232
+ ```
233
+
217
234
  ## Index default sort order
218
235
 
219
236
  You can define the default sort order for index pages:
@@ -30,6 +30,6 @@ The build method takes a PagePresenter object and collection of whatever you
30
30
  choose.
31
31
 
32
32
  The `index_name` class method takes no arguments and returns a string that should
33
- be representative of the the class name. If this method is not defined, your
33
+ be representative of the class name. If this method is not defined, your
34
34
  index component will not be able take advantage of Active Admin's
35
35
  *multiple index pages* feature.
@@ -28,7 +28,7 @@ end
28
28
  ```
29
29
 
30
30
  Second, you can pass a block to the tile option which will then be
31
- used as the contents fo the title. The resource being rendered
31
+ used as the contents of the title. The resource being rendered
32
32
  is passed in to the block. For Example:
33
33
 
34
34
  ```ruby
@@ -111,7 +111,8 @@ index do
111
111
  end
112
112
  ```
113
113
 
114
- In addition, you can insert the position of the row in the greater collection by using the index_column special command:
114
+ In addition, you can insert the position of the row in the greater
115
+ collection by using the index_column special command:
115
116
 
116
117
  ```ruby
117
118
  index do
@@ -121,7 +122,8 @@ index do
121
122
  end
122
123
  ```
123
124
 
124
- index_column take an optional offset parameter to allow a developer to set the starting number for the index (default is 1).
125
+ index_column take an optional offset parameter to allow a developer to set
126
+ the starting number for the index (default is 1).
125
127
 
126
128
  ## Sorting
127
129
 
@@ -129,9 +131,7 @@ When a column is generated from an Active Record attribute, the table is
129
131
  sortable by default. If you are creating a custom column, you may need to give
130
132
  Active Admin a hint for how to sort the table.
131
133
 
132
- If a column is defined using a block, you must pass the key to turn on sorting. The key
133
- is the attribute which gets used to sort objects using Active Record.
134
-
134
+ You can pass the key specifying the attribute which gets used to sort objects using Active Record.
135
135
  By default, this is the column on the resource's table that the attribute corresponds to.
136
136
  Otherwise, any attribute that the resource collection responds to can be used.
137
137
 
@@ -84,6 +84,12 @@ your model uses `has_one`:
84
84
 
85
85
  ```ruby
86
86
  ActiveAdmin.register Post do
87
+ permit_params :title,
88
+ :published_at,
89
+ :body,
90
+ categories_attributes: [:id, :title, :_destroy],
91
+ taggings_attributes: [:id, :tag],
92
+ comment_attributes: [:id, :body, :_destroy]
87
93
 
88
94
  form do |f|
89
95
  f.inputs 'Details' do
@@ -106,7 +112,7 @@ ActiveAdmin.register Post do
106
112
  f.inputs do
107
113
  f.has_many :comment,
108
114
  new_record: 'Leave Comment',
109
- allow_destroy: -> { |c| c.author?(current_admin_user) } do |b|
115
+ allow_destroy: -> (c) { c.author?(current_admin_user) } do |b|
110
116
  b.input :body
111
117
  end
112
118
  end
@@ -116,6 +122,9 @@ ActiveAdmin.register Post do
116
122
  end
117
123
  ```
118
124
 
125
+ *NOTE*: In addition to using `has_many` as illustrated above, you'll need to add
126
+ `accepts_nested_attributes` to your parent model and [configure strong parameters](https://activeadmin.info/2-resource-customization.html)
127
+
119
128
  The `:allow_destroy` option adds a checkbox to the end of the nested form allowing
120
129
  removal of the child object upon submission. Be sure to set `allow_destroy: true`
121
130
  on the association to use this option. It is possible to associate
@@ -159,6 +168,9 @@ form do |f|
159
168
  end
160
169
  ```
161
170
 
171
+ Datepicker also accepts the `:label` option as a string or proc to display.
172
+ If it's a proc, it will be called each time the datepicker is rendered.
173
+
162
174
  ## Displaying Errors
163
175
 
164
176
  To display a list of all validation errors:
@@ -187,7 +199,7 @@ You can arrange content in tabs as shown below:
187
199
  end
188
200
  end
189
201
 
190
- tab 'Advanced' do
202
+ tab 'Advanced', html_options: { class: 'specific_css_class' } do
191
203
  f.inputs 'Advanced Details' do
192
204
  f.input :role
193
205
  end
@@ -197,6 +209,8 @@ You can arrange content in tabs as shown below:
197
209
  end
198
210
  ```
199
211
 
212
+ `html_options` allows you set additional html params for tab's menu item.
213
+
200
214
  # Customize the Create Another checkbox
201
215
 
202
216
  In order to simplify creating multiple resources you may enable ActiveAdmin to
@@ -146,6 +146,17 @@ action_item :super_action,
146
146
  end
147
147
  ```
148
148
 
149
+ By default action items are positioned in the same order as they defined (after default actions),
150
+ but it’s also possible to specify their position manually:
151
+
152
+ ```ruby
153
+ action_item :help, priority: 0 do
154
+ "Display this action to the first position"
155
+ end
156
+ ```
157
+
158
+ Default action item priority is 10.
159
+
149
160
  # Modifying the Controller
150
161
 
151
162
  The generated controller is available to you within the registration block by
@@ -1,2 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
1
3
  gem 'github-pages'
2
4
  gem 'jekyll-redirect-from'
@@ -0,0 +1,249 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ activesupport (4.2.10)
5
+ i18n (~> 0.7)
6
+ minitest (~> 5.1)
7
+ thread_safe (~> 0.3, >= 0.3.4)
8
+ tzinfo (~> 1.1)
9
+ addressable (2.5.2)
10
+ public_suffix (>= 2.0.2, < 4.0)
11
+ coffee-script (2.4.1)
12
+ coffee-script-source
13
+ execjs
14
+ coffee-script-source (1.11.1)
15
+ colorator (1.1.0)
16
+ commonmarker (0.17.13)
17
+ ruby-enum (~> 0.5)
18
+ concurrent-ruby (1.0.5)
19
+ dnsruby (1.61.2)
20
+ addressable (~> 2.5)
21
+ em-websocket (0.5.1)
22
+ eventmachine (>= 0.12.9)
23
+ http_parser.rb (~> 0.6.0)
24
+ ethon (0.11.0)
25
+ ffi (>= 1.3.0)
26
+ eventmachine (1.2.7)
27
+ execjs (2.7.0)
28
+ faraday (0.15.3)
29
+ multipart-post (>= 1.2, < 3)
30
+ ffi (1.9.25)
31
+ forwardable-extended (2.6.0)
32
+ gemoji (3.0.0)
33
+ github-pages (192)
34
+ activesupport (= 4.2.10)
35
+ github-pages-health-check (= 1.8.1)
36
+ jekyll (= 3.7.4)
37
+ jekyll-avatar (= 0.6.0)
38
+ jekyll-coffeescript (= 1.1.1)
39
+ jekyll-commonmark-ghpages (= 0.1.5)
40
+ jekyll-default-layout (= 0.1.4)
41
+ jekyll-feed (= 0.10.0)
42
+ jekyll-gist (= 1.5.0)
43
+ jekyll-github-metadata (= 2.9.4)
44
+ jekyll-mentions (= 1.4.1)
45
+ jekyll-optional-front-matter (= 0.3.0)
46
+ jekyll-paginate (= 1.1.0)
47
+ jekyll-readme-index (= 0.2.0)
48
+ jekyll-redirect-from (= 0.14.0)
49
+ jekyll-relative-links (= 0.5.3)
50
+ jekyll-remote-theme (= 0.3.1)
51
+ jekyll-sass-converter (= 1.5.2)
52
+ jekyll-seo-tag (= 2.5.0)
53
+ jekyll-sitemap (= 1.2.0)
54
+ jekyll-swiss (= 0.4.0)
55
+ jekyll-theme-architect (= 0.1.1)
56
+ jekyll-theme-cayman (= 0.1.1)
57
+ jekyll-theme-dinky (= 0.1.1)
58
+ jekyll-theme-hacker (= 0.1.1)
59
+ jekyll-theme-leap-day (= 0.1.1)
60
+ jekyll-theme-merlot (= 0.1.1)
61
+ jekyll-theme-midnight (= 0.1.1)
62
+ jekyll-theme-minimal (= 0.1.1)
63
+ jekyll-theme-modernist (= 0.1.1)
64
+ jekyll-theme-primer (= 0.5.3)
65
+ jekyll-theme-slate (= 0.1.1)
66
+ jekyll-theme-tactile (= 0.1.1)
67
+ jekyll-theme-time-machine (= 0.1.1)
68
+ jekyll-titles-from-headings (= 0.5.1)
69
+ jemoji (= 0.10.1)
70
+ kramdown (= 1.17.0)
71
+ liquid (= 4.0.0)
72
+ listen (= 3.1.5)
73
+ mercenary (~> 0.3)
74
+ minima (= 2.5.0)
75
+ nokogiri (>= 1.8.2, < 2.0)
76
+ rouge (= 2.2.1)
77
+ terminal-table (~> 1.4)
78
+ github-pages-health-check (1.8.1)
79
+ addressable (~> 2.3)
80
+ dnsruby (~> 1.60)
81
+ octokit (~> 4.0)
82
+ public_suffix (~> 2.0)
83
+ typhoeus (~> 1.3)
84
+ html-pipeline (2.8.4)
85
+ activesupport (>= 2)
86
+ nokogiri (>= 1.4)
87
+ http_parser.rb (0.6.0)
88
+ i18n (0.9.5)
89
+ concurrent-ruby (~> 1.0)
90
+ jekyll (3.7.4)
91
+ addressable (~> 2.4)
92
+ colorator (~> 1.0)
93
+ em-websocket (~> 0.5)
94
+ i18n (~> 0.7)
95
+ jekyll-sass-converter (~> 1.0)
96
+ jekyll-watch (~> 2.0)
97
+ kramdown (~> 1.14)
98
+ liquid (~> 4.0)
99
+ mercenary (~> 0.3.3)
100
+ pathutil (~> 0.9)
101
+ rouge (>= 1.7, < 4)
102
+ safe_yaml (~> 1.0)
103
+ jekyll-avatar (0.6.0)
104
+ jekyll (~> 3.0)
105
+ jekyll-coffeescript (1.1.1)
106
+ coffee-script (~> 2.2)
107
+ coffee-script-source (~> 1.11.1)
108
+ jekyll-commonmark (1.2.0)
109
+ commonmarker (~> 0.14)
110
+ jekyll (>= 3.0, < 4.0)
111
+ jekyll-commonmark-ghpages (0.1.5)
112
+ commonmarker (~> 0.17.6)
113
+ jekyll-commonmark (~> 1)
114
+ rouge (~> 2)
115
+ jekyll-default-layout (0.1.4)
116
+ jekyll (~> 3.0)
117
+ jekyll-feed (0.10.0)
118
+ jekyll (~> 3.3)
119
+ jekyll-gist (1.5.0)
120
+ octokit (~> 4.2)
121
+ jekyll-github-metadata (2.9.4)
122
+ jekyll (~> 3.1)
123
+ octokit (~> 4.0, != 4.4.0)
124
+ jekyll-mentions (1.4.1)
125
+ html-pipeline (~> 2.3)
126
+ jekyll (~> 3.0)
127
+ jekyll-optional-front-matter (0.3.0)
128
+ jekyll (~> 3.0)
129
+ jekyll-paginate (1.1.0)
130
+ jekyll-readme-index (0.2.0)
131
+ jekyll (~> 3.0)
132
+ jekyll-redirect-from (0.14.0)
133
+ jekyll (~> 3.3)
134
+ jekyll-relative-links (0.5.3)
135
+ jekyll (~> 3.3)
136
+ jekyll-remote-theme (0.3.1)
137
+ jekyll (~> 3.5)
138
+ rubyzip (>= 1.2.1, < 3.0)
139
+ jekyll-sass-converter (1.5.2)
140
+ sass (~> 3.4)
141
+ jekyll-seo-tag (2.5.0)
142
+ jekyll (~> 3.3)
143
+ jekyll-sitemap (1.2.0)
144
+ jekyll (~> 3.3)
145
+ jekyll-swiss (0.4.0)
146
+ jekyll-theme-architect (0.1.1)
147
+ jekyll (~> 3.5)
148
+ jekyll-seo-tag (~> 2.0)
149
+ jekyll-theme-cayman (0.1.1)
150
+ jekyll (~> 3.5)
151
+ jekyll-seo-tag (~> 2.0)
152
+ jekyll-theme-dinky (0.1.1)
153
+ jekyll (~> 3.5)
154
+ jekyll-seo-tag (~> 2.0)
155
+ jekyll-theme-hacker (0.1.1)
156
+ jekyll (~> 3.5)
157
+ jekyll-seo-tag (~> 2.0)
158
+ jekyll-theme-leap-day (0.1.1)
159
+ jekyll (~> 3.5)
160
+ jekyll-seo-tag (~> 2.0)
161
+ jekyll-theme-merlot (0.1.1)
162
+ jekyll (~> 3.5)
163
+ jekyll-seo-tag (~> 2.0)
164
+ jekyll-theme-midnight (0.1.1)
165
+ jekyll (~> 3.5)
166
+ jekyll-seo-tag (~> 2.0)
167
+ jekyll-theme-minimal (0.1.1)
168
+ jekyll (~> 3.5)
169
+ jekyll-seo-tag (~> 2.0)
170
+ jekyll-theme-modernist (0.1.1)
171
+ jekyll (~> 3.5)
172
+ jekyll-seo-tag (~> 2.0)
173
+ jekyll-theme-primer (0.5.3)
174
+ jekyll (~> 3.5)
175
+ jekyll-github-metadata (~> 2.9)
176
+ jekyll-seo-tag (~> 2.0)
177
+ jekyll-theme-slate (0.1.1)
178
+ jekyll (~> 3.5)
179
+ jekyll-seo-tag (~> 2.0)
180
+ jekyll-theme-tactile (0.1.1)
181
+ jekyll (~> 3.5)
182
+ jekyll-seo-tag (~> 2.0)
183
+ jekyll-theme-time-machine (0.1.1)
184
+ jekyll (~> 3.5)
185
+ jekyll-seo-tag (~> 2.0)
186
+ jekyll-titles-from-headings (0.5.1)
187
+ jekyll (~> 3.3)
188
+ jekyll-watch (2.0.0)
189
+ listen (~> 3.0)
190
+ jemoji (0.10.1)
191
+ gemoji (~> 3.0)
192
+ html-pipeline (~> 2.2)
193
+ jekyll (~> 3.0)
194
+ kramdown (1.17.0)
195
+ liquid (4.0.0)
196
+ listen (3.1.5)
197
+ rb-fsevent (~> 0.9, >= 0.9.4)
198
+ rb-inotify (~> 0.9, >= 0.9.7)
199
+ ruby_dep (~> 1.2)
200
+ mercenary (0.3.6)
201
+ mini_portile2 (2.3.0)
202
+ minima (2.5.0)
203
+ jekyll (~> 3.5)
204
+ jekyll-feed (~> 0.9)
205
+ jekyll-seo-tag (~> 2.1)
206
+ minitest (5.11.3)
207
+ multipart-post (2.0.0)
208
+ nokogiri (1.8.5)
209
+ mini_portile2 (~> 2.3.0)
210
+ octokit (4.12.0)
211
+ sawyer (~> 0.8.0, >= 0.5.3)
212
+ pathutil (0.16.1)
213
+ forwardable-extended (~> 2.6)
214
+ public_suffix (2.0.5)
215
+ rb-fsevent (0.10.3)
216
+ rb-inotify (0.9.10)
217
+ ffi (>= 0.5.0, < 2)
218
+ rouge (2.2.1)
219
+ ruby-enum (0.7.2)
220
+ i18n
221
+ ruby_dep (1.5.0)
222
+ rubyzip (1.2.2)
223
+ safe_yaml (1.0.4)
224
+ sass (3.6.0)
225
+ sass-listen (~> 4.0.0)
226
+ sass-listen (4.0.0)
227
+ rb-fsevent (~> 0.9, >= 0.9.4)
228
+ rb-inotify (~> 0.9, >= 0.9.7)
229
+ sawyer (0.8.1)
230
+ addressable (>= 2.3.5, < 2.6)
231
+ faraday (~> 0.8, < 1.0)
232
+ terminal-table (1.8.0)
233
+ unicode-display_width (~> 1.1, >= 1.1.1)
234
+ thread_safe (0.3.6)
235
+ typhoeus (1.3.0)
236
+ ethon (>= 0.9.0)
237
+ tzinfo (1.2.5)
238
+ thread_safe (~> 0.1)
239
+ unicode-display_width (1.4.0)
240
+
241
+ PLATFORMS
242
+ ruby
243
+
244
+ DEPENDENCIES
245
+ github-pages
246
+ jekyll-redirect-from
247
+
248
+ BUNDLED WITH
249
+ 1.16.5
@@ -1,2 +1,2 @@
1
- gems:
1
+ plugins:
2
2
  - jekyll-redirect-from
@@ -9,7 +9,7 @@
9
9
  <ol class='level-2'>
10
10
  <li><a href='{{ site.baseurl }}/1-general-configuration.html#authentication'>Authentication</a></li>
11
11
  <li><a href='{{ site.baseurl }}/1-general-configuration.html#site-title-options'>Site Title Options</a></li>
12
- <li><a href='{{ site.baseurl }}/1-general-configuration.html#internationalization-(i18n)'>Internationalization (I18n)</a></li>
12
+ <li><a href='{{ site.baseurl }}/1-general-configuration.html#internationalization-i18n'>Internationalization (I18n)</a></li>
13
13
  <li><a href='{{ site.baseurl }}/1-general-configuration.html#namespaces'>Namespaces</a></li>
14
14
  <li><a href='{{ site.baseurl }}/1-general-configuration.html#load-paths'>Load paths</a></li>
15
15
  <li><a href='{{ site.baseurl }}/1-general-configuration.html#comments'>Comments</a></li>
@@ -6,4 +6,12 @@
6
6
  <a href="http://demo.activeadmin.info/admin">Try It Now!</a>
7
7
  <a href="http://github.com/activeadmin/activeadmin">Get the Code</a>
8
8
  </div>
9
- </div>
9
+
10
+ <div id="tidelift">
11
+ <a href="https://tidelift.com/subscription/pkg/rubygems-activeadmin?utm_source=rubygems-activeadmin&utm_medium=readme" target="_blank">
12
+ <span class="cta">
13
+ Get license assurances and timely security notifications
14
+ </span>
15
+ </a>
16
+ </div>
17
+ </div>