Como arreglar valores NULL en Ruby on Rails con Sqlite3

Para quienes desarrollan en Ruby on Rails con Sqlite3 como base de datos local, no se si les haya pasado pero un dia Sqlite3 comenzaba a poner valores NULL por default a fuerzas, inclusive me toco que en una ocasion mi schema.rb tuviera un

:default =>''''''''''''NULL'''''''''''''''

que claro no tiene ningun sentido. Las migraciones estan bien, sin valores por default, entonces, que pasa?

Pues despues de buscar y buscar, por fin encontre la respuesta: Sqlite3 despues de la version 3.3.7 cambio su formato interno y hacia algun tipo de conflicto con la metadata.

Como lo arreglo? Facil! Primero, desinstala libsqlite3-ruby1.8 de tu sistema (estoy suponiendo que como yo, usas (K)Ubuntu e instalaste el paquete desde repositorios).

sudo aptitude purge libsqlite3-ruby1.8

Ahora solo instala la version actual de la gem para sqlite3

sudo gem install sqlite3-ruby

Listo, ahora elimina el archivo de base de datos que estabas usando, y vuelvelo a crear con rake

rake db:migrate

Revisa tu schema.rb, debe estar limpio de valores default NULL que no le indicaste en las migraciones.

Espero les sirva, para mi esto fue un grandisimo dolor de cabeza muchos, muchos dias.

Related posts:

  1. My 5 reasons to leave Ruby on Rails
  2. Como publicar en tu blog desde Emacs
  3. Como enviar videos al Xbox360 desde Linux
  4. Que se traen con la laptop de $100 dls?
  5. Optimiza la concatenacion de strings en Ruby

About Gabriel Saldaña

Web developer and free software advocate.
This entry was posted in GNU/Linux Free Software & Open Source, Programming & Web Development. Bookmark the permalink.

2 Responses to Como arreglar valores NULL en Ruby on Rails con Sqlite3

  1. Pingback: meneame.net

  2. Pingback: www.enchilame.com

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>