Sto usando seed.rb per popolare sia il mio database di sviluppo che di produzione. Di solito compilo il primo con i dati fittizi e il secondo con i dati minimi reali che la mia app deve eseguire (ad es. Il primo utente e così via).Come utilizzare seed.rb per popolare in modo selettivo i database di sviluppo e/o di produzione?
Come posso specificare in seed.rb per quale ambiente sono i dati?
Dato che so che "gruppo" è un metodo Gemfile, mi piacerebbe ottenere lo stesso comportamento per seed.rb.
E.g. Mi piacerebbe scrivere qualcosa come questo nel mio seed.rb:
group :development do
# development specific seeding code
end
group :production do
# production specific seeding code
end
# non-specific seeding code (it always runs)
questo per essere in grado di chiamare sia lo sviluppo-specifico e il codice non specifica con
$ rake db:seed
E per chiamare sia la produzione specifico e il codice non specifica con:
$ rake db:seed RAILS_ENV=production
Grazie
si può fornire maggiori dettagli? Una volta che lo hai inserito, quali comandi usi? Come si fa a garantire che solo le modifiche vadano al database di produzione e non vengano cancellati tutti gli altri dati non specificati (il database di destinazione potrebbe pensare di voler cancellare altri dati se il seme è vuoto) ecc. – ahnbizcad
@ahnbizcad lo si assicura attraverso il file 'config/database.yml'. Si imposta l'obiettivo del database di produzione lì, così come il database di sviluppo. – ruzenhack