首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >名称错误未初始化常量模块rails

名称错误未初始化常量模块rails
EN

Stack Overflow用户
提问于 2016-02-15 12:17:40
回答 2查看 1.1K关注 0票数 0

我有一个rails应用程序,在/app/adapters/UDB/文件夹中有模块。模块未加载。我在application.rb中添加了以下内容

config.autoload_paths += Dir["#{config.root}/app/adapters/**/*"]

我正在调用模型文件/models/userinvite.rb中的模块

代码语言:javascript
复制
   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

代码语言:javascript
复制
   module UDB
   class YpRewards
     def initialize

     end
     def ypusers
        @ypusers ||= UDB::Connection.new.connection.connect('ypusers')
     end
   ...

请帮我解决这个问题。

EN

回答 2

Stack Overflow用户

发布于 2016-02-15 13:24:40

我认为问题出在模块名称上。

您的模块名是UDB,然后您可以按照rails命名约定(驼峰大小写)以小写字母指定其名称来加载此模块。

代码语言:javascript
复制
 config.autoload_paths += %W( #{config.root}/app/adapters/u_d_b)
票数 0
EN

Stack Overflow用户

发布于 2016-02-15 14:03:57

尝试在您的UserInvite模型中包含该模块,

代码语言:javascript
复制
include UDB

This is a good site to know more about the placement and usage of modules.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35401420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档