lib/active_admin/resource.rb in activeadmin-0.5.1 vs lib/active_admin/resource.rb in activeadmin-0.6.0
- old
+ new
@@ -1,10 +1,11 @@
require 'active_admin/resource/action_items'
require 'active_admin/resource/controllers'
require 'active_admin/resource/menu'
require 'active_admin/resource/page_presenters'
require 'active_admin/resource/pagination'
+require 'active_admin/resource/routes'
require 'active_admin/resource/naming'
require 'active_admin/resource/scopes'
require 'active_admin/resource/sidebars'
require 'active_admin/resource/belongs_to'
@@ -66,18 +67,21 @@
@member_actions, @collection_actions = [], []
end
end
include Base
+ include ActionItems
+ include Authorization
include Controllers
+ include Menu
+ include Naming
include PagePresenters
include Pagination
- include ActionItems
- include Naming
include Scopes
include Sidebars
include Menu
+ include Routes
# The class this resource wraps. If you register the Post model, Resource#resource_class
# will point to the Post class
def resource_class
ActiveSupport::Dependencies.constantize(resource_class_name)
@@ -89,33 +93,23 @@
def resource_table_name
resource_class.quoted_table_name
end
+ def resource_column_names
+ resource_class.column_names
+ end
+
def resource_quoted_column_name(column)
resource_class.connection.quote_column_name(column)
end
# Returns the named route for an instance of this resource
def route_instance_path
[route_prefix, controller.resources_configuration[:self][:route_instance_name], 'path'].compact.join('_').to_sym
end
- # Returns a symbol for the route to use to get to the
- # collection of this resource
- def route_collection_path
- route = super
-
- # Handle plural resources.
- if controller.resources_configuration[:self][:route_collection_name] ==
- controller.resources_configuration[:self][:route_instance_name]
- route = route.to_s.gsub('_path', '_index_path').to_sym
- end
-
- route
- end
-
# Clears all the member actions this resource knows about
def clear_member_actions!
@member_actions = []
end
@@ -133,23 +127,20 @@
admin_notes.nil? ? ActiveAdmin.admin_notes : admin_notes
end
def belongs_to(target, options = {})
@belongs_to = Resource::BelongsTo.new(self, target, options)
+ self.menu_item_menu_name = target unless @belongs_to.optional?
controller.belongs_to(target, options.dup)
end
def belongs_to_config
@belongs_to
end
# Do we belong to another resource
def belongs_to?
!belongs_to_config.nil?
- end
-
- def include_in_menu?
- super && !(belongs_to? && !belongs_to_config.optional?)
end
# The csv builder for this resource
def csv_builder
@csv_builder || default_csv_builder