seeds run rails ruby-on-rails rake rakefile seeding

ruby-on-rails - run seeds rails



¿Puedo pasar un argumento para rastrillar db: semilla? (1)

Parte de mi seeds.rb carga una gran cantidad de datos en la base de datos. Quiero poder cargar selectivamente estos datos. P.ej

$ rake db:seed

o

$rake db:seed[0]

simplemente cargaría los datos necesarios para ejecutar el sitio, mientras que

$ rake db:seed[1]

cargaría mi archivo de datos grandes en la base de datos también. es posible? ¿Cómo puedo hacer que esto suceda? Si no, ¿puede alguien pensar en una manera de hacer lo que estoy tratando de hacer?


Desafortunadamente, los argumentos de los rastrillos son difíciles de transmitir (y db:seed no pasa sus argumentos, independientemente).

Su mejor apuesta es usar variables de entorno para pasar sus argumentos adicionales a través de:

rake db:seed minimal=yes

y

unless ENV["minimal"] # do stuff

etc