-2

私の構造は次のようなものです(これに基づいています):

# lib/myapp/uploader.rb
require 'uploader/base'

# lib/myapp/uploader/base.rb
module MyApp
  module Uploader
    class Base
    end
  end
end

# app/models/model.rb
class Model < ActiveRecord::Base
  def test
    MyApp::Uploader::Base
  end
end

コンソールで直接呼び出されます:

$ MyApp::Uploader::Base #> MyApp::Uploader::Base

コンソールのモデルを通じて:

$ Model.new.test
LoadError: Expected <snip>/lib/myapp/uploader.rb to define Uploader

これはなぜですか、どうすれば修正できますか?

4

1 に答える 1

1

更新された回答:

この場合、モデルに必要なものがありません

したがって、次を追加しますapp/models/model.rb

# app/models/model.rb
class Model < ActiveRecord::Base

  require Rails.root.join('lib').join('myapp').join('uploader').join('base').to_s 

  def test
    MyApp::Uploader::Base
  end
end
于 2013-03-27T17:14:29.097 に答える