2010-10-12 13 views
5

Stworzyłem 2 modele i przeprowadziłem migracje, spróbowałem pracy nad każdym z nich i teraz chciałbym zacząć od nowa i podchodzić do nich inaczej. Jestem nowy w Railsach i nigdy nie próbowałem usuwać/usuwać tabel bazy danych (z wyjątkiem przywracania ich z powrotem po ich migracji).Szyny 3 - Jak mogę usunąć tabele bazy danych, które zostały utworzone?

Dzięki!

+0

Zobacz najlepszą odpowiedź na pytanie [Rails - Jak ponownie utworzyć bazę danych] [1]. [1]: http://stackoverflow.com/questions/4116067/rails-how-to-recreate-the-database –

Odpowiedz

1

Jeśli nigdy nie popełnione zmiany lub wdrożyć aplikację, można po prostu usunąć pliki modelowe i usunąć tabele z bazy danych za pomocą konsoli bazy danych (zakładając, że jest to sqlite3 typ sqlite3, aby wejść do konsoli powłoki) lub GUI administrowania bazą danych.

W przeciwnym razie należy zastosować migrację drop_table, aby odzwierciedlić zmiany w systemie produkcyjnym.

+0

Dzięki. Zastanawiam się, czy mogę użyć SQLite DB Browser, aby po prostu usunąć tabele. Czy mogę po prostu usunąć stare pliki migracji? – teecraft

6

Aby usunąć tabelę podczas migracji, można rails g migration DropUsers

class DropUsers < ActiveRecord::Migration 
    def up 
    drop_table :users 
    end 

    def down 
    # recreate table logic here 
    end 
end 

Można również usunięcie tabel z szyn konsola

ActiveRecord::Migration.drop_table(:users) 

FYI Jeśli chcesz usunąć utworzony przez szafot kod, rails destroy scaffold User

Powiązane problemy