2009-08-08 11 views
6

¿La mejor manera de cargar datos de inicialización? Tengo una tabla de autor que está estrechamente relacionada con una tabla de usuarios. También tengo migraciones para modificar estas dos tablas. Deseo agregar un usuario administrador predeterminado, pero quiero asegurarme de que ambas tablas se creen y que todas las migraciones se hayan ejecutado para estas tablas antes de que se ejecute mi migración CreateDefaultAdmin (o lo que sea). ¿Hay mejores prácticas para hacer esto? Lo siento si esto ya fue preguntado.Migraciones de rieles: Cargar datos predeterminados

Respuesta

11

Sus opciones:

  1. Use migraciones como se indica aquí: http://railspikes.com/2008/2/1/loading-seed-data
  2. utilizar un complemento tercera fiesta como: seed-fu o db-populate
  3. Use accesorios, que se describen en los carriles spike artículo.
  4. Espere a que los carriles 3 y utilizar el nuevo seeds.rb: http://github.com/rails/rails/commit/4932f7b38f72104819022abca0c952ba6f9888cb

Personalmente utilizo una versión modificada yaml-db. Me gusta construir todos mis datos de inicialización en mi entorno de desarrollo, y mantenerlo en mi repositorio, cuando lo activo puedo cargarlo con una tarea de rastreo.

0

canto le acaba de crear migraciones separadas y ejecutarlos a éste por separado

2

La última (borde?) Versión de Rails incluye un archivo db/seeds.rb en el que se puede colocar código para crear registros en su base de datos. Hasta entonces, las migraciones son el camino a seguir, pero pueden ser complicadas cuando el esquema cambia constantemente (que es el punto principal de los archivos de migración).

Cuestiones relacionadas