0

/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
   ...

それを解決するのを手伝ってください。

4

2 に答える 2

0

問題はモジュール名にあると思います。

モジュール名は UDB です。このモジュールは、Rails の命名規則 (キャメルケース) に従って小文字で名前を指定することでロードできます。

 config.autoload_paths += %W( #{config.root}/app/adapters/u_d_b)
于 2016-02-15T05:24:39.873 に答える
0

モジュールを UserInvite モデルに含めてみてください。

include UDB

これは、モジュールの配置と使用法について詳しく知るための良いサイトです。

于 2016-02-15T06:03:57.360 に答える