Ho seminato una riga di dati nella tabella modificando il file db/seed.rb
ed eseguendo il comando rake db:seed
. Inconsapevolmente, ho inserito alcune informazioni errate in quella riga. Quindi voglio rimuovere la riga di dati aggiunta in precedenza. C'è un comando rake per lo stesso come rake db:rollback
per rake db:migrate
.Annullare i dati precedentemente seminati in Rails
risposta
Ci sono un paio di aspetti:
1: Si desidera modificare i dati seme quando è presente nel database di nessun altro dato:
Si dovrà semplicemente rifare la rake db:seed
dopo l'aggiornamento del seme file .rb. Assicurati di avere MyModel.delete_all
prima di provare ad aggiungere qualcosa a quel modello.
2: si desidera modificare i dati di semi, ma ci sono altri dati aggiunti al database
Questo è un po 'più difficile. Spesso la cosa più semplice da fare è quello di modificare manualmente i dati sia con dichiarazioni di SQL prime, o con l'uso di strumenti come PhpPpAdmin, PhpMyAdmin ecc
Ora, c'è possiby un modo per incidere questo insieme e quello sarebbe fare del voodoo nel file seed.rb. Così si potrebbe correre rake db:seed deseed=true
, poi nella vostra seed.rb:
if ENV['deseed']
#Do your deseeding action here
else
#Do your seeding here.
end
si potrebbe anche ottenere reali pazzo e fare qualcosa del genere:
deseed = ENV['desee']
#DANGER: Dirty hacks upcoming:
deseed? myModelCall = MyModel.method(:destroy_all): myModelCall = MyModel.method(:create)
myModelCall.call :user_id_or_whatevs => 23 #this creates or deletes a MyModel entity with the given parameters
#NOTE this might not work in all cases and I would not necessarily recommend doing this.
#<3uby
- 1. Rails: come scaricare un documento precedentemente caricato?
- 2. Rimuovere i cookie precedentemente memorizzati da Mechanize
- 3. Rails bundler: come annullare pacchetto bundle?
- 4. Come annullare l'eliminazione di un file precedentemente eliminato nella cronologia di git?
- 5. Rails: passare i dati a JavaScript
- 6. come annullare i cookie in PHP?
- 7. Come si cambiano i dati dell'app Rails?
- 8. Come annullare un lavoro pianificato con delayed_job in Rails?
- 9. Come annullare l'errore durante l'uso di Rspec in Rails?
- 10. Rails - dove mettere i file di dati?
- 11. Memorizza i dati in Ruby on Rails senza Database
- 12. Rimozione di aspettative precedentemente definite in JMockit
- 13. Come cancellare elementi precedentemente echeggiati in PHP
- 14. seleziona i campi dopo che SendKeys li aveva precedentemente compilati.
- 15. Come annullare/annullare attività TPL?
- 16. "Annullare elimina" in webapplication?
- 17. Come annullare in Prolog
- 18. Rails/Rack: "ArgumentError: invalid% -encoding" per i dati POST
- 19. Come faccio a mettere i dati a Rails utilizzando jQuery
- 20. Come ajax recupera i dati dal controller ruby on rails
- 21. Posso annullare i metodi tramite delegati in C#
- 22. Come annullare tutti i file aggiunti in Mercurial
- 23. Come proteggere i dati utente nel database con Rails?
- 24. Come scrivere un'attività Rake per importare i dati nell'app Rails?
- 25. Spingere i dati dall'app per rails ai client
- 26. Rails modifica dati JSON serializzati
- 27. Come annullare soft delete in Sequelize.js
- 28. Come annullare Alamofire.upload
- 29. Come posso attivare il vincolo precedentemente disattivato?
- 30. Rails 4 Dati Toggle link_to
Eliminare il database, ricreare e seminare di nuovo. :) –
@Sergio Tulentsev: Sono d'accordo. Ma devo conservare i dati che erano già lì prima che facessi l'ultimo seme. Voglio solo rimuovere gli ultimi dati con seme. Potete per favore aiutarmi a farlo. –
Non ci sono attività rake per questo. Trova ed elimina i dati manualmente. Se prevedi che succeda di nuovo, scrivi una sceneggiatura. –