2011-07-04 13 views
0

"Foursquare"という名前のフォルダにコントローラのセットをグループ化しました。モジュール名のクラス宣言は次のようになります:Foursquare :: BadgesController。それは動作しませんのでRubyのモジュール名の競合

class Foursquare::BadgesController < ApplicationController 
    def search 
    user = Foursquare::User.new(session[:access_token]) 
    end 
end 

:このコントローラの内部で私はまた、Foursquareのモジュールを持っていFoursquareの宝石からメソッドを呼び出したいです。

コントローラのモジュール名の変更以外にオプションはありますか?

+1

「動作しません」というより、エラーメッセージや予期しない動作を教えてください。 –

+0

エラーは次のとおりです。初期化されていない定数Foursquare :: User。また、Foursquareの宝石と同じモジュールにコントローラを置いて欲しくないことを明確にしたいと思っています。私は同じモジュール名に何らかの分離をしたいと考えていました。助けてくれてありがとう – MIchel

答えて

0

なぜ機能しないのですか?フォースクエアのモジュール空間に独自のクラスを挿入することはできません。それは必ずしも良い考えではありませんが、言語は問題ありません。

+0

エラーは次のとおりです:初期化されていない定数Foursquare :: User – MIchel

+1

Foursquareの宝石をあなたのRailsプロジェクトに含めて、それを正しく使っていますか?いずれにしても、自分のモジュール名をgemモジュール名と同じでない名前に変更します。それは、同じスペースに両方を置くのは良い考えではありません。遅かれ早かれ鼻血を求めています。あなたはおそらく自分自身も推測しています。 – Casper

+0

名前を変更する必要があることに同意します。どうもありがとう – MIchel