我有一个rails应用程序,在/app/adapters/UDB/文件夹中有模块。模块未加载。我在application.rb中添加了以下内容
config.autoload_paths += Dir["#{config.root}/app/adapters/**/*"]
我正在调用模型文件/models/userinvite.rb中的模块
def update_cassandra
ypusers = UDB::YpRewards.new.ypusers
ypusers.execute("UPDATE invitation_backlog SET invitation_code = '#{invitation_code}', invitation_sent_date = #{invitation_sent_date.to_i * 1000}, invited_by = '#{invited_by}' WHERE email_address = '#{email}'")
end/app/adapters/UDB/yp_rewards.rb
module UDB
class YpRewards
def initialize
end
def ypusers
@ypusers ||= UDB::Connection.new.connection.connect('ypusers')
end
...请帮我解决这个问题。
发布于 2016-02-15 13:24:40
我认为问题出在模块名称上。
您的模块名是UDB,然后您可以按照rails命名约定(驼峰大小写)以小写字母指定其名称来加载此模块。
config.autoload_paths += %W( #{config.root}/app/adapters/u_d_b)发布于 2016-02-15 14:03:57
尝试在您的UserInvite模型中包含该模块,
include UDBThis is a good site to know more about the placement and usage of modules.
https://stackoverflow.com/questions/35401420
复制相似问题