2012-05-10 14 views
1

リソースを生成しようとしていますが、Active_recordへの参照をすべて削除し、databse.ymlファイルを削除しました。Rails 3.2データベースなしのジェネレータ

レール・サーバは、[OK]を起動しますが、私はモデルを生成しようとすると:私は次のエラーを取得

rails g resource contact 

No value provided for required options '--orm'

をリソースを生成するときに何のデータベースを指定しない方法はあります?

答えて

0

簡単な方法はありません。あなたは、リソース・ジェネレータ用source codeを見れば、あなたはORMに関するこの部分が表示されます:だから、それは明示的にORMせずにこのコマンドを実行しようとする試みを拒否し

# Loads the ORM::Generators::ActiveModel class. This class is responsible 
    # to tell scaffold entities how to generate an specific method for the 
    # ORM. Check Rails::Generators::ActiveModel for more information. 
    def orm_class 
     @orm_class ||= begin 
     # Raise an error if the class_option :orm was not defined. 
     unless self.class.class_options[:orm] 
      raise "You need to have :orm as class option to invoke orm_class and orm_instance" 
     end 

     begin 
      "#{options[:orm].to_s.camelize}::Generators::ActiveModel".constantize 
     rescue NameError 
      Rails::Generators::ActiveModel 
     end 
     end 
    end 

、とあなたはORMを指定した場合、それはORM::Generators::ActiveModelを探しています。上のコメントには、詳細情報を見つける場所を指定しています。Rails::Generators::ActiveModel。上のコメントは、ORM仕様を作成するためにそれを拡張する方法を説明しています。

レールに組み込まれているのは、デフォルトではthe ActiveRecord generatorです。

は、共通ライブラリの数のための発電機を備えてrails3-generatorsと呼ばれる宝石がありますが、あなたのことができseeそれはオームズのためにそれだけでdata_mappermongo_mappermongoid、およびactive_modelのための機能を追加します。

私が知る限り、「データベースなし」用の事前構築されたORMジェネレータはありません。希望の場合は、Rails::Generators::ActiveModelの上部にある指示に従ってください(必要な参考資料としてrails3-generators宝石のソースを使用してください)。

しかし、それはあまりにも多くの努力のように思えますが、組み込みのActiveRecordジェネレータを使用して生成し、そのORMに関連して生成したものを手動で変更または削除するように伝えることをおすすめします。