gpt4 book ai didi

ruby-on-rails - 在 Rails 中扩展内置类功能的最佳位置在哪里?

转载 作者:行者123 更新时间:2023-12-04 06:23:40 25 4
gpt4 key购买 nike

我有一些方法要添加到 Ruby 的 Array我的 Rails 应用程序的类。把它们放在哪里最好?

现在我将它们放在 config/environment.rb 中。

最佳答案

config/environment.rb 并不是最好的地方,因为如果尝试扩展在执行 environment.rb 时尚未解决的类,您可能会遇到严重的负载排序问题。

最好将文件放入 config/initializers。任何放置在那里的脚本都将在 rails 运行时加载后执行。

你可以做的是创建一个文件 lib/my_extensions.rb

module MyExtensions
end

然后在 lib/my_extensions/array.rb :
module MyExtensions::Array 
def join_with_commas
join(", ")
end
end

并在 config/initializers/load_my_extensions.rb
class Array
include MyExtensions::Array
end

这将导致 MyExtensions::Array 在您每次在开发模式下调用请求时自动重新加载。这比每次更改代码时都重新启动应用程序要好。

关于ruby-on-rails - 在 Rails 中扩展内置类功能的最佳位置在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3134936/

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