Ruby on Rails: неинициализированная константа AdminController

Ошибка маршрутизации! неинициализированная константа AdminController

Это появляется у меня при попытке перейти к

localhost:3000/admin

Я много искал, но все еще застрял!

Рельсы 4.2.4

Руби 2.2.3

Активадмин 1.0.0 пред2

Мой файл Gem:5dPDVf http://ideone.com/5dPDVf

Мой файл route.rb: dF6EFThttp://ideone.com/dF6EFT


person Karim Abd Elhameed Mohamed    schedule 21.02.2016    source источник
comment
Добро пожаловать в StackOverflow. Хорошо, если вы опубликуете определение класса и местоположение AdminController, это может быть проблемой множественного числа: например. stackoverflow.com/questions/15845491/   -  person Tim    schedule 21.02.2016
comment
Thnx 4 ваш ответ 1-/myapp/app/admin/dashbored.rb-›ideone.com/T3p6Za 2 -/myapp/config/intializers/active_admin.rb-›ideone.com/0pfHHe 3-/myapp/config /environment/production.rb-›ideone.com/OQHCQC 4-/myapp/config/environment/development. rb-›ideone.com/NY1qda 5-/myapp/config/environment/test.rb-›ideone.com/fKnRjm 6-/myapp/config/application.rb-›ideone.com/zS7sSP 7-/myapp/app/controllers/application_controller.rb-› ideone.com/6DfMEU 8-/myapp/app/models/admin_user.rb-›ideone.com/LCLOHD 9-/myapp/app/admin/admin_user.rb-›ideone.com/qpCgtL   -  person Karim Abd Elhameed Mohamed    schedule 21.02.2016
comment
Пожалуйста, обратите внимание, что я совсем новый разработчик Rails, так что если что-то вам непонятно, это моя вина, и ваша помощь для меня ценна. Спасибо, Тим.   -  person Karim Abd Elhameed Mohamed    schedule 21.02.2016
comment
Нет проблем, Карим, я просто просматривал очередь на проверку, вижу, кто-то добрался до тебя. Удачи.   -  person Tim    schedule 21.02.2016
comment
Еще нет, все еще есть проблема и зависание: /   -  person Karim Abd Elhameed Mohamed    schedule 21.02.2016


Ответы (2)


Вы запускали rails generate active_admin:install ?

person Eduardo    schedule 21.02.2016
comment
Спасибо Эдуардо за повтор, да, я сделал это. - person Karim Abd Elhameed Mohamed; 21.02.2016

Похоже, вам нужно создать класс AdminsController следующим образом:

in app/controllers/admins_controller.rb

class AdminsController < ApplicationController
  def index      
  end 
end

Вы можете прочитать Обзор контроллера действий

Возможно, вы определили его как AdminsController (множественное число), поэтому вам может потребоваться настроить свои маршруты на это вместо создания класса AdminsController.

Имя контроллера должно быть во множественном числе (это соглашение об именах в Rails).

routes.rb

resources :admins

Вам также понадобится файл представления inapp/views/admins/ с именем index.html.erb.

а затем посетите http://localhost:3000/admins.

person Andrew Hendrie    schedule 21.02.2016
comment
Спасибо Эндрю за повтор, я создал admin_controller.rb, но можно ли поставить вместо этого точки (...) между объявлением вызова и его завершением?? - Когда я создаю его и стираю эти точки, я открываю route.rb и добавляю ресурсы: admins. Это все то же самое, и я также пытаюсь использовать ресурсы: admin (единственное число), это также не работает! - person Karim Abd Elhameed Mohamed; 21.02.2016
comment
см. редактирование о том, что имя контроллера во множественном числе - ... может быть заменено действиями, такими как def index end (опять же - см. редактирование в моем ответе, также рекомендуется прочитать Руководство Rails Обзор контроллера действий. - person Andrew Hendrie; 21.02.2016
comment
Теперь у меня есть кое-что новое - › Отсутствует шаблон. Отсутствуют администраторы/индекс шаблона, приложение/индекс с {:locale=›[:en], :formats=›[:html], :variants=›[], :handlers= ›[:erb, :builder, :raw, :ruby, :coffee, :arb, :jbuilder]}. Искал в: * /home/karim/myapp/app/views * /home/karim/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/devise-3.5.6/app/views * /home/karim/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/bundler/gems/activeadmin-f7483e3b8fcd/app/views * /home/karim/.rbenv/versions/2.2.3 /lib/ruby/gems/2.2.0/gems/kaminari-0.16.3/app/views - person Karim Abd Elhameed Mohamed; 21.02.2016
comment
Вам нужно создать файл представления: app/views/admins/index.html.erb - person Andrew Hendrie; 21.02.2016
comment
Хм, это работает! но не так, как исключение Сэр, пожалуйста, у меня структура папок моего приложения выглядит как администратор, активы, контроллеры, помощники, почтовые программы, модели, представления. Я открыл папку представлений, как вы сказали, и создал новую папку admins/index. html.erb, но мы загружаем localhost: 3000/admins -> для меня отображается пустая страница. Очевидно, из-за этой новой страницы, которую я создаю, и при запуске localhost: 3000/admins/admin_users-> он ожидает отображения администраторов, но это дает Действие «показать» не может быть найдено для AdminsController. Я следую некоторым учебным пособиям по курсу Udemy, и он не сталкивался с этим из-за rails, activeadmin diff. версии - person Karim Abd Elhameed Mohamed; 21.02.2016
comment
вам нужно будет создать действие show в вашем AdminsController и соответствующее ему представление. Вы можете добавить HTML в файл index.html.erb, если хотите отобразить что-то на этой странице. - person Andrew Hendrie; 21.02.2016
comment
Умм спасибо за ваше время - person Karim Abd Elhameed Mohamed; 21.02.2016