2011-02-02 4 views
1

J'ESSAYER mongodb avec Rails 3. après avoir suivi les instructions du site de mongomapper et quelques autres, je n'ai pas été en mesure de résoudre un petit problème ...rails et MongoDB

Aucune valeur fournie pour les options requises '--orm'

J'ai ajouté un mongo.rb de fichier dans mon dossier config pour faire des choses tick

MongoMapper.connection = Mongo::Connection.new('localhost', 27017) 
MongoMapper.database = "cobboc_#{Rails.env}" 

if defined?(PhusionPassenger) 
    PhusionPassenger.on_event(:starting_worker_process) do |forked| 
    MongoMapper.connection.connect if forked 
    end 
end 

Répondre

1

Le projet rails3-generators fournit des générateurs de modèle mongomapper pour résoudre votre problème. Exigez la gemme dans votre Gemfile.

# Gemfile 
gem 'rails3-generators' 

Remarque, les Rails 3 générateurs ont moved à the mongo_mapper gem

+0

je suis allé pour mongoid: P – Amit

2

Le fichier doit être mongo.rb dans config/initializers et contiennent:

require 'mongo_mapper' # loading mongo_mapper 
MongoMapper.connection = Monog::Connection.new # localhost and port 27017 are the default values 
MongoMapper.database = "cobboc_#{Rails.env}" 

L'extension Passenger est déjà effectuée dans le code MongoMapper.

Si vous souhaitez utiliser le fichier database.yml pour la configuration que vous pouvez faire:

require 'mongo_mapper' 
db_config = YAML::load(File.read("#{Rails.root}/config/database.yml")) 

if db_config[Rails.env] && db_config[Rails.env]['adapter'] == 'mongodb' 
    mongo_config = db_config[Rails.env] 
    MongoMapper.connection = Mongo::Connection.new(mongo_config['host']) 
    MongoMapper.database = mongo_config['database'] 
end 
+0

bien que je ne peux toujours pas utiliser les générateurs ... voici ce que j'utilise 'rails g modèle utilisateur --skip-migra tion' et c'est l'erreur 'Aucune valeur fournie pour les options requises '--orm'' – Amit

1

Vous n'avez pas spécifié où vous obtenez l'erreur « ORM »

S'il était dans le cas « générer le modèle » vous pourrait appeler:

sudo gem installer rails3 générateurs

rails génèrent modèle livre --skip-MIGR ation --orm = mongomapper

0

je courais:

$ rails generate scaffold project name:string 

>> No value provided for required options '--orm' 

Solution:

  1. Ajouter rails3-générateurs à Gemfile
  2. rails $ Nom du projet d'échafaudage g: string --skip migration --orm = mongomapper