gpt4 book ai didi

ruby-on-rails - Controller 命名空间内未初始化的常量

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

我正在尝试解决以下问题,但我还无法理解 Rails 中的自动加载。我在 app/api/v1/registration_controller 中有以下 Controller 。

class Api::V1::RegistrationController < ApplicationController
include ::Foo::Bar

def index
end
end

app/foo/bar.rb 中的以下模块/类:

module Foo
class Bar
def some_method
end
end
end

但是,我收到以下错误消息:

uninitialized constant Foo

我正在努力解决这个问题,并且已经在 Stack Overflow 上搜索了解决方案,但我找不到合适的解决方案。如果解决方案已经写在别处,请关闭此主题。

希望有人能帮助我。谢谢!

最佳答案

Rails 自动加载器搜索许多路径以尝试定位常量 - app/ 不是其中之一。您可以通过将其附加到 application.rb 来添加它,例如:

config.autoload_paths << File.join(config.root, "app")

或者将 foo/bar.rb 移动到 lib/ 中,它已经在加载程序路径中。

关于ruby-on-rails - Controller 命名空间内未初始化的常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35900867/

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