2012-02-01 4 views
1

Je crée une table d'utilisateurs simple et quand j'ai couru rake db: migrate il est apparu à create_table (: users) Howerver J'ai reçu les avertissements suivants en même temps. J'ai essayé d'exécuter rake db: migrer encore et puis j'ai eu la 2ème erreur sur cette page. Comment puis-je vérifier si la table a été créée et comment éviter cet avertissement/erreur?rake db: migrate échoue

ERROR1

WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead. 
    at /Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/rdoctask.rb 
WARNING: Global access to Rake DSL methods is deprecated. Please include 
    ... Rake::DSL into classes and modules which use the Rake DSL methods. 
WARNING: DSL method DemoApp::Application#task called at /Users/anderskitson/.rvm/gems/[email protected]/gems/railties-3.0.1/lib/rails/application.rb:214:in `initialize_tasks' 

erreur 2

rake aborted! 
undefined local variable or method `d' for main:Object 

C'est ce que je reçois avec --trace

/Users/anderskitson/rails_project/demo_app/Rakefile:1:in `<top (required)>' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/rake_module.rb:25:in `load' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/rake_module.rb:25:in `load_rakefile' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:501:in `raw_load_rakefile' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:82:in `block in load_rakefile' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:81:in `load_rakefile' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:65:in `block in run' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run' 
/Users/anderskitson/.rvm/gems/[email protected]/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>' 
/Users/anderskitson/.rvm/gems/[email protected]/bin/rake:19:in `load' 
/Users/anderskitson/.rvm/gems/[email protected]/bin/rake:19:in `<main>' 

J'ai couru

rails génèrent échafaudage Nom d'utilisateur: email string: string

Je couru

rake db:migrate 

mon fichier de coupe ressemble

d# Add your own tasks in files placed in lib/tasks ending in .rake, 
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. 

require File.expand_path('../config/application', __FILE__) 
require 'rake' 


DemoApp::Application.load_tasks 
+0

Pouvez-vous ajouter la migration incriminée à votre question. –

+0

Je suis désolé, je ne sais pas exactement ce que vous voulez dire –

+0

Ajoutez le code pour la migration que vous essayez d'exécuter. – bensie

Répondre

4

Retirez le d qui est le premier caractère de votre Rakefile:

d# Add your own tasks in files placed in lib/tasks ending in .rake, 

Vous reconnaîtrez cette ligne parce que c'est le numéro de ligne qui est pointée dans le message d'erreur que vous avez collé, et vous pouvez dire que C'est la partie erronée de la ligne parce que c'est exactement la lettre que le message d'erreur vous a dit qu'il ne pouvait pas identifier.

+0

qui a résolu la moitié de mon problème. Mes bases de données créent avec succès, mais je reçois toujours tous les messages d'avertissement, pourquoi cela peut-être. –

0

Cela dépend de la version de Rails que vous utilisez actuellement, mais je vous recommande de générer une nouvelle application Rails et de copier sur le Rakefile généré pour être sûr de pouvoir e. Il y a probablement un require "rake/rdoctask" là-dedans qui doit être changé.

Cela dit, cet avertissement ne cause probablement pas l'échec de la migration.

Exécutez à nouveau avec --trace pour obtenir la trace complète de la pile.

+0

J'ai ajouté la sortie de --trace –