diff --git a/lib/administrate/base_dashboard.rb b/lib/administrate/base_dashboard.rb index 4b05404ce0..b34b5b61dc 100644 --- a/lib/administrate/base_dashboard.rb +++ b/lib/administrate/base_dashboard.rb @@ -9,6 +9,7 @@ require "administrate/field/polymorphic" require "administrate/field/select" require "administrate/field/string" +require "administrate/field/rich_text" require "administrate/field/text" require "administrate/field/time" require "administrate/field/url" diff --git a/lib/generators/administrate/dashboard/dashboard_generator.rb b/lib/generators/administrate/dashboard/dashboard_generator.rb index 87513a3d4d..ccbed64e98 100644 --- a/lib/generators/administrate/dashboard/dashboard_generator.rb +++ b/lib/generators/administrate/dashboard/dashboard_generator.rb @@ -51,6 +51,22 @@ def create_resource_controller template("controller.rb.erb", destination) end + def admin_route + return unless options[:routes] + + ["config/routes/admin.rb", "config/routes.rb"].each do |path| + full_path = Rails.root.join(path) + routes = full_path if File.exists?(full_path) + end + return if routes.nil? + + content = "resources :#{file_name.pluralize}\n" + sentinel = /namespace :#{namespace}.*\n/ + indent = File.binread(routes)[/\n(\s*)namespace :#{namespace}/, 1] || "" + + inject_into_file routes, indent + " " + content, after: sentinel + end + private def namespace