app/controllers/administrate/application_controller.rb in administrate-0.7.0 vs app/controllers/administrate/application_controller.rb in administrate-0.8.0
- old
+ new
@@ -2,11 +2,13 @@
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
def index
search_term = params[:search].to_s.strip
- resources = Administrate::Search.new(resource_resolver, search_term).run
+ resources = Administrate::Search.new(scoped_resource,
+ dashboard_class,
+ search_term).run
resources = resources.includes(*resource_includes) if resource_includes.any?
resources = order.apply(resources)
resources = resources.page(params[:page]).per(records_per_page)
page = Administrate::Page::Collection.new(dashboard, order: order)
@@ -76,13 +78,13 @@
def nav_link_state(resource)
resource_name.to_s.pluralize == resource.to_s ? :active : :inactive
end
helper_method :valid_action?
- def valid_action?(name, resource = resource_name)
+ def valid_action?(name, resource = resource_class)
!!routes.detect do |controller, action|
- controller == resource.to_s.pluralize && action == name.to_s
+ controller == resource.to_s.underscore.pluralize && action == name.to_s
end
end
def routes
@routes ||= Namespace.new(namespace).routes
@@ -95,29 +97,35 @@
def order
@_order ||= Administrate::Order.new(params[:order], params[:direction])
end
def dashboard
- @_dashboard ||= resource_resolver.dashboard_class.new
+ @_dashboard ||= dashboard_class.new
end
def requested_resource
@_requested_resource ||= find_resource(params[:id])
end
def find_resource(param)
- resource_class.find(param)
+ scoped_resource.find(param)
end
+ def scoped_resource
+ resource_class.default_scoped
+ end
+
def resource_includes
dashboard.association_includes
end
def resource_params
- params.require(resource_name).permit(dashboard.permitted_attributes)
+ params.require(resource_class.model_name.param_key).
+ permit(dashboard.permitted_attributes)
end
- delegate :resource_class, :resource_name, :namespace, to: :resource_resolver
+ delegate :dashboard_class, :resource_class, :resource_name, :namespace,
+ to: :resource_resolver
helper_method :namespace
helper_method :resource_name
def resource_resolver
@_resource_resolver ||=