gpt4 book ai didi

ruby-on-rails - Rails 4 父类(super class)在生产中仅与管理命名空间不匹配

转载 作者:数据小太阳 更新时间:2023-10-29 08:03:21 26 4
gpt4 key购买 nike

所以我在 Rails 4 中编写了一个小组合应用程序。它有一个管理命名空间,允许我只向公众公开某些 Controller 。

在开发时一切正常,但当我部署到生产环境(或在我的开发机器上切换到生产环境)时,我收到以下错误:

superclass mismatch for class WorksController (TypeError)

我的 Controller 结构如下所示:

controllers ->
admin ->
admin_controller.rb
portfolio ->
works_controller.rb
portfolio->
works_controller.rb

如您所见,我在作品集内命名了作品。

Controller 声明如下:

/controllers/admin/admin_controller
class Admin::AdminController < ApplicationController

/controllers/admin/portfolio/works_controller
class Admin::Portfolio::WorksController < Admin::AdminController

/controllers/portfolio/works_controller.rb
class Portfolio::WorksController < ApplicationController

现在对于我的 routes.rb,请注意我使用的是 Friendly ID,所以我使用自定义路由来拥有一个漂亮的面向客户端的 url。

get '/portfolio/:id' => 'portfolio/works#show', as: 'portfolio_work'

namespace :admin do
namespace :portfolio do
resources :works
end
end

所以我知道我一定是搞砸了,但我不知道是怎么搞砸的。我得到的错误与重新声明一个类有关,但我不知道我是怎么做到的。

非常感谢任何帮助。

最佳答案

在@ReggieB 试图帮助我之后找到了这个修复。事实证明,我的设备模型为“Admin”和一个也称为“Admin”的命名空间会产生问题(本应如此)。

关于ruby-on-rails - Rails 4 父类(super class)在生产中仅与管理命名空间不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33323868/

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