2012-02-11 10 views
18

Usando ruby-1.9.2 y rieles 3.2.1. La versión de mysql2 es 0.2.7.Método no definido `accept 'for nil: NilClass en rake db: migrate

Al ejecutar rake db: migrate consigo el error: "método no definido` Aceptar' para nil: NilClass:"

traza incluye:

gemas/activerecord-3.2.1/lib/active_record /connection_adapters/abstract/database_statements.rb:7:in `to_sql '

+0

¿Alguna vez ha hecho un éxito rake db: migrate, o se trata de una nueva instalación? ¿Funcionan otros comandos de rake? –

+0

Hola Marc, esta es una nueva instalación: actualiza a 10.7 Mac OS X. Rake db: crear funcionó bien. – vectran

+0

@vectran ¿Solucionó este problema? Estoy enfrentando el mismo problema ahora. – chhantyal

Respuesta

11

Ok, lo arreglé en mi máquina. Esto se debe a MySQL2 más antiguo. Haga esto para resolver el problema.

bundle update mysql2 

     Or 

bundle update 

Para más detalles visita Github

+0

gracias, funcionó para mí. – timeon

0

Usted recibe este caso en sus database.yaml que tienen el archivo:

dev: 
    adapter: mysql2 

Cabe (incluso si la joya que está utilizando es mysql2) :

dev: 
    adapter: mysql 

Me tomó más de una semana resolver esto Espero que le ahorre algo de tiempo.

10

Para mí eliminando joya 'activerecord-mysql2 adaptador' de la gema del archivo funcionó

+0

Funciona para mí al actualizar de Rails 3.0.3 a Rails 3.2.8 – superluminary

+1

Esa medicina curó mi ail –

1

Instalar el lastest joya mysql2 rubí. mi environtment:

Rails3.2.9 + mysql2 0.2.9, : "undefined method `accept' for nil:NilClass:" 
Rails3.2.9 + mysql2 0.3.11, works fine 
28

Cambiar su Gemfile de:

gem 'activerecord-mysql2-adapter' 

a:

gem 'mysql2' 
+0

Gracias. ¡Lo tengo en uno! – MichelV69

+0

¡Eso resolvió mi problema también! – n00b

+1

¿por qué sucede esto? – Maruccio

-1

definir:

def nil.accept 
    puts "Accepted." 
end 

y el error desaparecerá.

1

Puede suceder debido a la incompatibilidad de su versión mysql y ruby.

Para resolver esto, actualice su gema mysql por gem install mysql que instalará la última joya de mysql.

Y luego agregue esto en su Gemfile.

Si el problema persiste, entonces debería ver la compatibilidad entre el rubí y MySQL

Cuestiones relacionadas