Pregunta

Soy un usuario de Rails/Terminal de novatos y acabo de hacer una instalación limpia de Lion + Xcode + Rails. A diferencia de antes (en Snow Leopard), ahora recibo un error de ejecutar Rake DB: migrar.

He clonado mi código a través de Git que funcionó bien y creé la base de datos con el comando "creadob", pero cuando intento ejecutar "Rake DB: Migrate" en Terminal ahora se le ocurre este error:

rake aborted!
development database is not configured

Mi archivo config/database.yml se ve a continuación en la sección de desarrollo, que es exactamente la forma en que se veía antes en el leopardo Snow donde funcionó bien, así que no sé si el error que ahora recibo está relacionado con Lion.

development:  
adapter: postgresql
database: my_db
username: rasmus
encoding: utf8
pool: 5

¿Alguien puede ayudar, por favor?

¿Fue útil?

Solución 4

¡Resuelto!

No se había ejecutado mi "Gem Install PG", así que básicamente me faltaba la gema PG. Después de "Gem Instalar PG" en Terminal todo funciona bien.

Otros consejos

Recibí el mismo error y en mi caso fue porque la base de datos.ML no estaba sangrada correctamente. Todos los parámetros de configuración deben estar sangrados.

Tenga en cuenta que asegúrese de seguir las convenciones de espaciado adecuadas. La configuración de la base de datos es Whitespace Ak. Dos espacios por atributo funcionan bien. En el siguiente código, tenga en cuenta cómo cada atributo tiene dos espacios. No use pestañas. Si no usa espacios para atributos, Rake no funcionará y lanzará el mismo error.

development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

test:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: postgresql
  encoding: unicode
  database: db/production
  pool: 5
  timeout: 5000
  password:

También es posible que desee buscar errores de sintaxis en el archivo. Este es el error que aparecerá si tiene un error de sintaxis en su config/database.yml archivo e intenta hacer algo como iniciar el servidor web local o ejecutar rake db:migrate.

En mi caso, había eliminado accidentalmente el comentario de una línea en la parte superior del archivo y estaba viendo este error ya que la línea no commentada hizo de este un archivo YML inválido.

Aquí hay una respuesta de Pebcak para Googlers: consulte su archivo gem y asegúrese de haber especificado la gema adaptador de su base de datos en el grupo adecuado en su Gemfile. Tenía el mío definido solo para :production y :staging, y en un momento debe haber ejecutado manualmente gem install pg en mi máquina de desarrollo después de cambiar de MySQL. Esta mañana vacié todas las gemas para la aplicación ybundle install-El, luego no pude entender por qué la base de datos no se conectaría. Moviendo el pg especificación de gemas fuera de cualquier grupo y en ejecución bundle install resolvió el problema.

Una nota para otros que aterrizan en esta página de la pregunta: asegúrese de ejecutar el comando Rake DB correctamente, es decir:

rake db:migrate en vez de rake db migrate

Lo que funcionó en mi caso, después de haber intentado todo lo anterior cuando Rake DB: Crear falló, fue asegurarse de que mi filtro de rastrillo estuviera configurado correctamente.

Esto hizo el trabajo:

require "sinatra/activerecord/rake"
require 'sinatra/asset_pipeline/task'

namespace :db do
  task :load_config do
    require "./app"
  end
end
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top