【问题标题】:Change Root in ActiveAdmin在 ActiveAdmin 中更改根目录
【发布时间】:2013-07-14 09:22:30
【问题描述】:

现在我在 Rails 中的 active_admin gem 有一个默认 url

www.home.com/admin

但是活动管理员驻留在

www.home.com/group/admin

如何使活动管理员中的每个链接都路由到 /group/admin/[next link]

我在下面尝试了 Gmat 的解决方案,结果如下:

new_group_admin_user_session GET /group/admin/login(.:format) active_admin/devise/sessions#new group_admin_user_session POST /group/admin/login(.:format)
active_admin/devise/sessions#create destroy_group_admin_user_session DELETE|GET /group/admin/logout(.:format)
active_admin/devise/sessions#destroy group_admin_user_password POST /group/admin/password(.:format)
active_admin/设计/密码#create new_group_admin_user_password GET /group/admin/password/new(.:format)
active_admin/设计/密码#new edit_group_admin_user_password GET /group/admin/password/edit(.:format)
active_admin/设计/密码#edit PUT /group/admin/password(.:format)
active_admin/设计/密码#update group_admin_root /group/admin(.:format) group/admin/dashboard#index group_root /group(.:format) 组/仪表板#index batch_action_group_admin_leads POST /group/admin/leads/batch_action(.:format)
组/管理员/潜在客户#batch_action group_admin_leads GET /group/admin/leads(.:format)
组/管理员/潜在客户#index POST /group/admin/leads(.:format)
组/管理员/领导#create new_group_admin_lead GET /group/admin/leads/new(.:format) group/admin/leads#new edit_group_admin_lead GET /group/admin/leads/:id/edit(.:format) group/admin/leads#edit group_admin_lead GET /group/admin/leads/:id(.:format) group/admin/leads#show PUT /group/admin/leads/:id(.:format)
组/管理员/领导#update 删除 /group/admin/leads/:id(.:format)
capstonemlg/admin/leads#destroy group_admin_dashboard /group/admin/dashboard(.:format)
组/管理员/仪表板#index

对于格式设置,我深表歉意。关键是 www.home.com/group/[anything] 的所有链接都已损坏。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 activeadmin


    【解决方案1】:

    试试这个:

    # config/routes.rb
    namespace :group do
      ActiveAdmin.routes(self)
    end
    

    【讨论】:

    • 这似乎确实改变了 rake 路由中的路由。但是链接 www.home.com/group/admin 已损坏。我编辑了问题以包含 rake routes 输出
    【解决方案2】:

    我认为您还需要自定义 ActiveAdmin 命名空间。

    http://www.activeadmin.info/docs/2-resource-customization.html

    ActiveAdmin.register Post, :namespace => "groups/admin"

    【讨论】:

    • 我在哪里做这个?在 config/initializer/active_admin.rb 文件中?
    • 在 app/admin/resource.rb 中,您需要告诉 ActiveAdmin 那里的名称空间(AFAIK,可能有更好的方法来做到这一点,但我还没有找到)
    • 你所做的似乎有道理,但它会导致我的资产:预编译显示:Invalid route name: 'group/admin_root'
    • 您可能还需要 @gmats 命名空间 :group,以使路由器/资产满意
    • 这似乎导致`无效的路由名称:'group/group/admin_root'
    猜你喜欢
    • 2018-04-01
    • 2016-02-05
    • 1970-01-01
    • 1970-01-01
    • 2012-08-10
    • 2019-03-09
    • 2019-11-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多