gpt4 book ai didi

ruby - Ruby on Rails 中的实用程序类

转载 作者:数据小太阳 更新时间:2023-10-29 06:38:09 27 4
gpt4 key购买 nike

这可能是个愚蠢的问题,但我是 Ruby on Rails 的新手,需要一些指导。我想要一个帮助程序/实用程序类来执行一组网络操作并返回结果。我将该类放在哪里以及如何使用它。

我在我的 app/modulename/helpers 目录中创建了 network_helper.rb。当我尝试做时在我的 Controller 中

  myNetworkHelper = ModuleName::NetworkHelper.new
results = myNetworkHelper.getResults

我得到一个错误

 undefined method `new' for MyModule::NetworkHelper:Module

我敢肯定这只是对 ruby​​ on rails 工作原理的误解。我可以澄清一下吗?

将其作为类而不是模块并将其放入库中会更好吗?我可以在库中添加子文件夹并让它们自动加载吗?

最佳答案

库或类

像这样的小工具类通常放在 lib 文件夹中,尽管有些人更喜欢创建一个名为 classes 的文件夹。无论您选择哪个,请确保在 config/application.rb 中导入文件夹,因为 lib 文件夹不会自动加载:

config.autoload_paths += %W(#{config.root}/lib)

疑虑

如果您想使用可重用代码扩展您的一些模型而不是实用程序类,您可能还希望查看新的 Rails 4 关注文件夹,它鼓励您提取可重用模块:

参见:How to use concerns in Rails 4

关于ruby - Ruby on Rails 中的实用程序类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15318647/

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