Domanda

Sto riscontrando problemi con gli spazi dei nomi all'interno di ActivaEadmin. Se aggiungo le impostazioni di configurazione a uno spazio dei nomi all'interno dell'inizializzatore, prendo un lungo elenco di eccezioni quando tengo di avvio di Webrick.

Ho la seguente struttura:

▾ app/
  ▾ admin/
      agents.rb
      dashboards.rb
  ▾ agency/
      agents.rb
      dashboards.rb

Non vedo un mezzo per impostare uno spazio dei nomi all'interno dei dashboard in modo che in questo momento siano entrambi essenzialmente:

ActiveAdmin::Dashboards.build do
end

Gli agenti hanno le seguenti dichiarazioni:

ActiveAdmin.register Agent, :namespace=>:agency_admin do

e

ActiveAdmin.register Agent, :namespace=>:admin do

Tutto funziona bene con una configurazione predefinita. Posso tirare su /Agency_admin /agenti o /amministratore /agenti bene. Tuttavia, non appena aggiungo una configurazione come ciò che viene commentato come esempio all'interno dell'inizializzatore:

   config.namespace :admin do |admin|
     admin.site_title = "Custom Admin Title"
   end

Ottengo il flusso di eccezioni allegati all'avvio del server. Apprezzo qualsiasi aiuto/tutto su questo.

A parte questo, il motivo per cui lo sto facendo è fornire diversi metodi di idea per spazio dei nomi. Da quello che potrei dire nella fonte, è possibile farlo (almeno ciò che è sul Master attuale) poiché Base_Controller ottiene tali informazioni dallo spazio dei nomi. Mi rendo conto che molte persone raccomandano di usare Cancan, ma non è qualcosa che voglio né posso, fare a questo punto.

Grazie ancora in anticipo!

/Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/namespace.rb:191:in `eval': undefined method `devise' for #<Class:0x000001063e9188> (NoMethodError)
  from /Users/chance/code/rails/nokr/app/models/user.rb:36:in `<class:User>'
  from /Users/chance/code/rails/nokr/app/models/user.rb:1:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:456:in `load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:456:in `block in load_file'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:455:in `load_file'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:342:in `require_or_load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:489:in `load_missing_constant'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:181:in `block in const_missing'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:179:in `each'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:179:in `const_missing'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/module.rb:36:in `const_missing'
  from /Users/chance/code/rails/nokr/app/helpers/user/addresses_helper.rb:1:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:456:in `load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:456:in `block in load_file'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:455:in `load_file'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:342:in `require_or_load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:302:in `depend_on'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:214:in `require_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/abstract_controller/helpers.rb:135:in `block in modules_for_helpers'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/abstract_controller/helpers.rb:131:in `map!'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/abstract_controller/helpers.rb:131:in `modules_for_helpers'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/action_controller/metal/helpers.rb:89:in `modules_for_helpers'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/abstract_controller/helpers.rb:95:in `helper'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/action_controller/railties/paths.rb:17:in `block (2 levels) in with'
  from /Users/chance/code/rails/nokr/app/controllers/application_controller.rb:1:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:456:in `load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:456:in `block in load_file'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:455:in `load_file'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:342:in `require_or_load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:489:in `load_missing_constant'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:181:in `block in const_missing'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:179:in `each'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:179:in `const_missing'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/module.rb:36:in `const_missing'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/inherited_resources-1.2.2/lib/inherited_resources/base.rb:14:in `<module:InheritedResources>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/inherited_resources-1.2.2/lib/inherited_resources/base.rb:4:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/base_controller/menu.rb:2:in `<module:ActiveAdmin>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/base_controller/menu.rb:1:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `block in load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/base_controller.rb:2:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/resource_controller/actions.rb:2:in `<module:ActiveAdmin>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/resource_controller/actions.rb:1:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `block in load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/resource_controller.rb:2:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/dashboards/dashboard_controller.rb:3:in `<module:Dashboards>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/dashboards/dashboard_controller.rb:2:in `<module:ActiveAdmin>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/dashboards/dashboard_controller.rb:1:in `<top (required)>'
  from (eval):1:in `generate_dashboard_controller'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/namespace.rb:191:in `eval'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/namespace.rb:191:in `generate_dashboard_controller'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/namespace.rb:43:in `initialize'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/application.rb:110:in `new'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin/application.rb:110:in `find_or_create_namespace'
  from /Users/chance/code/rails/nokr/config/initializers/active_admin.rb:39:in `block in <top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/bundler/gems/active_admin-bbdbadafe5d7/lib/active_admin.rb:70:in `setup'
  from /Users/chance/code/rails/nokr/config/initializers/active_admin.rb:1:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:234:in `load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:234:in `block in load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `block in load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:234:in `load'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:556:in `block (2 levels) in <class:Engine>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:555:in `each'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:555:in `block in <class:Engine>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:30:in `instance_exec'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:30:in `run'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:55:in `block in run_initializers'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:54:in `each'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:54:in `run_initializers'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/application.rb:96:in `initialize!'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/railtie/configurable.rb:30:in `method_missing'
  from /Users/chance/code/rails/nokr/config/environment.rb:5:in `<top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `block in load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `load_dependency'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  from /Users/chance/code/rails/nokr/config.ru:4:in `block in <main>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rack-1.3.3/lib/rack/builder.rb:51:in `instance_eval'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rack-1.3.3/lib/rack/builder.rb:51:in `initialize'
  from /Users/chance/code/rails/nokr/config.ru:1:in `new'
  from /Users/chance/code/rails/nokr/config.ru:1:in `<main>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rack-1.3.3/lib/rack/builder.rb:40:in `eval'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rack-1.3.3/lib/rack/builder.rb:40:in `parse_file'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rack-1.3.3/lib/rack/server.rb:200:in `app'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/commands/server.rb:46:in `app'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rack-1.3.3/lib/rack/server.rb:301:in `wrapped_app'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/rack-1.3.3/lib/rack/server.rb:252:in `start'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/commands/server.rb:70:in `start'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/commands.rb:54:in `block in <top (required)>'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/commands.rb:49:in `tap'
  from /Users/chance/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems/railties-3.1.1/lib/rails/commands.rb:49:in `<top (required)>'
  from script/rails:6:in `require'
È stato utile?

Soluzione

Questo si è rivelato essere un ordine di questione OP sugli inizializzatori. Inizializzatori carichi di rotaie basati su ordine alfabetico piuttosto che la decretazione di gemme (che è quello che avevo originariamente pensato).

Per qualsiasi motivo, una volta introdotto le opzioni di configurazione, stava tentando di caricare/analizzare l'oggetto utente (un modello di idea che non era un amministratore_user) e esplodere come Devise non era ancora stato inizializzato.

Modifica Initializer/Active_Admin.rb in Initializer/X_Active_Admin.rb ha risolto questo problema.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top