PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Zadanie prowizji, aby obciąć wszystkie tabele w Rails 3

Znalazłem to przez Google, a potem otrzymałem znacznie prostsze rozwiązanie niż zatwierdzone, więc oto jest:Użyj database_cleaner klejnot. Oto kroki.

W pliku Gemfile (wykonaj pakiet po modyfikacji):

gem 'database_cleaner' # you might want to limit this to the dev and staging group

Mając ten klejnot na miejscu, instrukcja DatabaseCleaner.clean_with :truncation skróci bazę danych. Dodanie go do zadania prowizji jest trywialne:

# tasks/db/clean.rake

namespace :db do

  desc "Truncate all existing data"
  task :truncate => "db:load_config" do
    DatabaseCleaner.clean_with :truncation
  end

end

Otóż ​​to. Możesz także użyć DatabaseCleaner.clean_with :truncation linia wewnątrz pliku db/seeds.rb plik bezpośrednio, aby nie zapomnieć o skróceniu bazy danych przed seedowaniem.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql - Zmień numerację kolumn

  2. Przechowuj w tabeli tylko 5 ostatnich wyników wyszukiwania użytkownika

  3. Jakie jest E przed napisem Postgres?

  4. Transakcje zagnieżdżone w postgresql 8.2?

  5. Jak skopiować dane z jednej tabeli do drugiej w postgresie za pomocą polecenia kopiowania?