lib/trestle/admin/builder.rb in trestle-0.9.2 vs lib/trestle/admin/builder.rb in trestle-0.9.3
- old
+ new
@@ -5,11 +5,11 @@
class_attribute :admin_class
self.admin_class = Admin
class_attribute :controller
- self.controller = Controller
+ self.controller = -> { AdminController }
delegate :helper, :before_action, :after_action, :around_action, to: :@controller
def initialize(admin)
@admin, @controller = admin, admin.const_get(:AdminController)
@@ -25,10 +25,10 @@
scope.const_set("#{name.to_s.camelize}Admin", admin)
# Define admin controller class
# This is done using class_eval rather than Class.new so that the full
# class name and parent chain is set when Rails' inherited hooks are called.
- admin.class_eval("class AdminController < #{controller.name}; end")
+ admin.class_eval("class AdminController < #{controller.call.name}; end")
# Set a reference on the controller class to the admin class
controller = admin.const_get(:AdminController)
controller.instance_variable_set("@admin", admin)