Podążam za filmami samouczków szyn i nie wiem, co faktycznie robi komenda db:test:prepare
. Czy ktoś może podać wyjaśnienie?Co robi rake db: test: właściwie przygotowujesz?
Odpowiedz
The rake db:migrate above runs any pending migrations on the development environment and updates db/schema.rb. The rake db:test:load recreates the test database from the current db/schema.rb. On subsequent attempts, it is a good idea to first run db:test:prepare, as it first checks for pending migrations and warns you appropriately.
- http://guides.rubyonrails.org/testing.html
Zasadniczo obsługuje klonowania bazę danych, dzięki czemu nie trzeba uruchamiać migracje przeciwko próbie aktualizacji bazy testowej.
szczególności rake db:test:prepare
zrobi następujące:
- Sprawdzić toczących migracje i
- i załadować schemat testowy
Oznacza to, że będzie ona wyglądać plik db/schema.rb
w celu ustalenia, czy wszelkie migracje istniejące w projekcie, które nie zostały uruchomione. Zakładając, że nie ma żadnych zaległych migracji, załaduje ona następnie bazę danych i przeładuje ją na podstawie zawartości pliku db/schema.rb
.
rake db: test: prepare jest dobrym rozwiązaniem problemów z PG, takich jak this.
„PG :: UndefinedTable: ERROR: relacja nie istnieje” z właściwą Szyny i konwencja nazewnictwa”, gdzie nie mogłem po prostu wykonać rake db:migrate RAILS_ENV=production
Kiedy, na przykład nie można utworzyć bazę danych testowych dla bug omówione here: "PG undefinedtable błędach użytkownicy relacja nie istnieje"
Wszystko arround tego błędu „PG :: undefinedTable: eRROR: relacja xxxxx nie istnieje”
Podczas gdy ten link może odpowiedzieć na pytanie, lepiej jest dołączyć istotne części odpowiedzi tutaj i podać link do odniesienia. Odpowiedzi dotyczące linków mogą stać się nieprawidłowe, jeśli strona z linkami się zmieni. – Patrick
Przepraszam, edytowałem z objaśnieniami –
- 1. co dokładnie robi rake db: migrate do?
- 2. co właściwie robi -arrayWithArray?
- 3. Co właściwie robi CascadeType.REFRESH?
- 4. co właściwie robi ImageSwitcher?
- 5. Co właściwie robi StreamingContextStates.Clone?
- 6. Co właściwie robi addChildViewController?
- 7. Co właściwie robi "__COMPAT_LAYER"?
- 8. Co właściwie robi funkcja Process.Dispose()?
- 9. Co właściwie robi plik ____ Pythona?
- 10. Expression.Bind() - co on właściwie robi?
- 11. Jaka jest różnica między db: test: clone, db: test: clone_structure, db: test: load i db: test: prepare?
- 12. Pusta nazwa metody, co to właściwie robi?
- 13. Android SQLite - co właściwie robi SQLiteDatabase.replace()?
- 14. Co właściwie "Main Interface" w Xcode * robi *?
- 15. Co właściwie robi registerHTTPOperationClass w AFNetworking?
- 16. Co właściwie robi Rails ActionController :: Metal
- 17. Co właściwie robi pseudo protokół JavaScript?
- 18. Co właściwie robi funkcja if :: rdbuf()?
- 19. Co właściwie robi metoda HTML5 File.slice?
- 20. Arduino F(): co to właściwie robi
- 21. Co właściwie robi funkcja python print()?
- 22. Co właściwie robi mój wybór GLFW_SAMPLES?
- 23. Co właściwie robi "python setup.py check"?
- 24. szyn: rake db: Test: przygotowanie Vs testu natarcia: przygotować
- 25. Po Railsach 3 upgrade rake db: test: przygotowanie nie działa?
- 26. rake db: create vs rake db: create: wszystko
- 27. Co właściwie zwraca system.in.read?
- 28. Co właściwie robi "strip Swift symbols" w Xcode?
- 29. Co właściwie robi ustawienie wbudowane Xcode 5 "Nieużywane funkcje"?
- 30. Kiedy uruchomiłem `bundle exec rake test: prepare` to pomyłkę, ale` bundle exec rake db: test: prepare` przechodzi przez fine z ostrzeżeniem. Co się dzieje?
doskonały, dzięki! – bengem
'rake db: test: prepare' jest teraz przestarzałe. – Jngai1297
Powyższy URL jest martwy, to będzie nowy https://github.com/rails/rails/blob/4-1-stable/activerecord/CHANGELOG.md#rails-410-april-8-2014 – riffraff