Я углубляюсь в RoR, и мне нужно удалить модель и ее таблицу, а также обновить другие модели, которые ссылаются на нее. Я выполнил поиск в Google и SO, и лучший ответ, который я нашел, был this , но ответ мне неясен. Окончательный консенсус заключался в том, чтобы использовать метод ruby script/destroy model
, а затем «вручную редактировать любые миграции, которые могут содержать ссылки на эти удаленные модели» Это последняя часть, о которой мне неясно. Я хочу удалить модели для моих моделей и таблиц user
и profile
...
class CreateUsers < ActiveRecord::Migration
def self.up
create_table :users do |t|
t.string :email
t.string :password
t.timestamps
end
end
def self.down
drop_table :users
end
end
class CreateProfiles < ActiveRecord::Migration
def self.up
create_table :profiles do |t|
t.string :name
t.integer :user_id
t.timestamps
end
end
def self.down
drop_table :profiles
end
end
и обновите модель article
и таблицу, которая ссылается на них ...
class CreateArticles < ActiveRecord::Migration
def self.up
create_table :articles do |t|
t.string :title
t.text :body
t.datetime :published_at
t.string :image
t.timestamps
end
end
def self.down
drop_table :articles
end
end
class AddUserIdToArticles < ActiveRecord::Migration
def self.up
add_column :articles, :user_id, :integer
end
def self.down
remove_column :articles, :user_id
end
end
Могу ли я просто сделать ruby script/destroy user
и затем вызвать методы self.down
в миграциях article
? Если да, то как мне вызвать методы self.down и в каком порядке?
Заранее большое спасибо за помощь!