ruby-on-rails - 模型中未定义的模块方法
问题描述
lib/modules/file_type.rb
module Modules
module Type
def friend_name(type:)
...
end
end
end
应用程序/模型/car.rb
class Car < ApplicationRecord
include Modules::Type
def self.to_array
...
name = friend_name(type: 'test')
...
end
end
但我收到此错误:
undefined method `friend_name'
我不确定为什么会收到此错误。
任何人都可以帮助我吗?
解决方案
如果friend_name
是类方法,那么而不是在模型中include
使用extend
Car
extend Modules::Type
include
有关和之间的区别的更多信息extend
可以在这里找到 -
希望有帮助!
推荐阅读
- c# - Unity getter setter 限制不起作用
- sql - 尝试更新 SQL 中的子字符串
- mongodb - 尝试安装 hhvm mongo 驱动程序时 hphpize 不起作用
- reactjs - 如何使用 react-hooks 将函数应用于值
- java - 显示 RecyclerView 进度的圆形进度条
- exception - 如何使用 JDBC 区分不正确的登录凭据和服务器不可用
- sql - 在 SQL 案例中,当多于不同的 CRETERIA 时
- python - Mongoengine:将 ListField 项插入特定的嵌入文档
- linker - 使用地图文件链接而没有目标文件
- python - Python:如何根据熊猫数据框中的增量时间选择行?