我已经设置了Rails活动管理员,界面加载就好了,这里是我在Gemfile中的设置:
# Use all the things Active Admin needs ==================
gem 'devise', github: 'plataformatec/devise'
gem 'responders', github: 'plataformatec/responders'
gem 'inherited_resources', github: 'josevalim/inherited_resources'
gem 'ransack', github: 'ernie/ransack'
gem 'activeadmin', github: 'gregbell/active_admin', branch: 'rails4'
gem 'formtastic', github: 'justinfrench/formtastic'
gem "friendly_id", "~> 5.0.2"
我可以转到/ admin,它可以很好地加载界面。
我唯一的问题是当我说做命令时:
rails generate active_admin:resource Pages
它在我的/app/admin/pages.rb中生成资源,但是当我重新加载页面时,我收到错误。
完整的错误消息:
NameError
uninitialized constant Pages
Extracted source (around line #1):
1 ActiveAdmin.register Pages do
2
3 end
Rails.root: /Freelance/Current Projects/Birch/forge
Application Trace | Framework Trace | Full Trace
app/admin/pages.rb:1:in `<top (required)>'
config/routes.rb:2:in `block in <top (required)>'
config/routes.rb:1:in `<top (required)>'
This error occurred while loading the following files:
/Freelance/Current Projects/Birch/forge/config/routes.rb
/Freelance/Current Projects/Birch/forge/app/admin/pages.rb
有没有人知道为什么会这样?我没有做任何事情来打破它或任何事情,所以不确定它可能是什么。
答案 0 :(得分:2)
生成资源时,使用复数形式。您应该使用模型的单数名称运行它。默认情况下,寄存器将查找传递给ActiveAdmin.register
方法的类。要解决此问题,假设您有一个名为Page
的模型,只需删除管理文件顶部s
末尾的Pages
广告。
ActiveAdmin.register Page do
end
一般惯例是以单数形式命名管理文件。