gpt4 book ai didi

ruby-on-rails - 添加 Admin 命名空间时的路由错误

转载 作者:行者123 更新时间:2023-12-04 16:59:01 25 4
gpt4 key购买 nike

我在我的应用程序中添加了一个 Admin 命名空间,所以当登录到管理区域时,它必须是这样的:admin/websites 和 admin/page/8

所以这就是我在 routes.rb 中的内容

namespace :admin do |admin|
match '/' => 'dashboard#index'
resources :websites
resources :pages
resources :sessions
get 'login' => 'sessions#new', :as => 'login'
get 'logout' => 'sessions#destroy', :as => 'logout'
end

我在 app/controllers 目录中有 admin_controller.rb。
class Admin::BaseController < ApplicationController
protect_from_forgery
include UrlHelper
...

我在 app/controllers 中创建了一个管理目录。所以我在 app/controllers/admin/websites_controller.rb 里面有这个
class Admin::WebsitesController < ApplicationController

其他一些答案建议使用 class Admin::WebsitesController < Admin::BaseController,但这对我来说从未奏效。如果我错了,请告诉我。

那么在我的布局文件 (app/views/layouts/application.html.erb) 中,我有这样的链接 edit_admin_website_path(@website)给我路由错误 Routing Error No route matches {:action=>"edit", :controller=>"admin/websites"}为什么?! :(

最佳答案

添加名为 的文件application_controller.rb 在具有此内容的 admin 目录中:

class Admin::ApplicationController < ApplicationController
end

然后,对于此目录中的每个 Controller ,扩展 Admin::ApplicationController 类。

你试过这个吗?
admin_edit_website_path(@website)

关于ruby-on-rails - 添加 Admin 命名空间时的路由错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7571780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com