ruby-on-rails - Rails 全局函数可用于所有对象
问题描述
我想创建一个current_order_week
在我的应用程序中全局可用的函数,并且可以类似于类似current_user
. 我不想include
在特定的模型/控制器中使用它,我只想让它随处可用。
我修改了我/lib
的文件夹以包含一个lib_extensions.rb
文件并添加到该文件中:
class Object
def current_order_week
end
end
我已经修改了我application.rb
的包括:
config.autoload_paths << Rails.root.join('lib')
config.eager_load_paths << Rails.root.join('lib')
但是当我尝试current_order_week
从控制台或测试中调用时,我仍然看到:
NameError: undefined local variable or method 'current_order_week' for main:Object
我还需要做什么?
解决方案
application_helper.rb
您应该在文件中添加此功能。所有控制器ApplicationController
都ApplicationController
从ApplicationHelper
.
module ApplicationHelper
def current_order_week
end
end
这将可用于视图和控制器
推荐阅读
- pyspark - AttributeError:“BinaryLogisticRegressionSummary”对象没有属性“_jdf”
- java - JMS 会话创建失败
- python - Flask SocketIO:如何从后台任务发送消息
- javascript - 向上滚动到某个点
- python - 来自 Python 的 PythonAnywhere 编辑(例如 VS Code)
- android - Android Volley 请求适用于模拟器,但在物理手机上出现客户端错误。伙计们请帮助我,我是新手
- javascript - 传单多边形问题
- laravel - 广播频道未在 Laravel 中注册
- next.js - Next js public/assets/css 不会加载到动态生成的页面上
- django - 用于可写嵌套 JSON 的 DRF 序列化器