Ошибка имени неинициализированного постоянного модуля рельсов
У меня есть приложение рельсы в том, что у меня есть модули внутри /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
...
Пожалуйста, помогите мне решить это.
2 ответа
Попробуйте включить модуль в модель UserInvite,
include UDB
Это хороший сайт, чтобы узнать больше о размещении и использовании модулей.
Я думаю, что проблема с именем модуля.
Ваше имя модуля - UDB, затем вы можете загрузить этот модуль, указав его имя строчными буквами в соответствии с соглашением об именах rails (camelcasing)
config.autoload_paths += %W( #{config.root}/app/adapters/u_d_b)