Якщо відповідь на це вже обговорюється, будь ласка, вкажіть мені у правильному напрямку. Я шукав цю проблему, але нічого, що я знайшов, працював у моєму випадку.
Я створив таблиці, які я хотів би видалити. Я видалив моделі та міграції, але коли я намагаюсь відтворити їх, а потім мігрую, я отримую наступне:
SQLite3::SQLException: table already exists, etc....
Я намагався використати SQLite
менеджер видалити їх вручну, але я не знаю, де знаходиться файл бази даних (інші повідомлення також не допомогли мені тут). Я на Win 7
, до речі.
Я хотів би знати правильний спосіб це зробити.
Відповіді:
6 за відповідь № 1Це інший найпростіший спосіб створити таблицю та міграцію знову. Якщо ви використовуєте рейки 3. запустіть ці команди, щоб відмовитися від бази даних і створити його знову.
граблі db: скинути #, щоб скинути базу даних
rake db: створити # для створення такої ж бази даних
rake db: перемістити # для переміщення даних.
4 для відповіді № 2
ви можете генерувати міграцію
rails generate migration DropProducts
і використовуйте його, щоб скинути стіл
class DropProducts < ActiveRecord::Migration
def up
drop_table :products
end
end
0 для відповіді № 3
Я написав повідомлення в блозі про справу з таким сценарієм, це може бути корисно ...
http://www.fmhcc.com.au/ruby/database-migrations-in-rails-and-when-to-start-from-scratch/