Для Rails 3.2 я написал эту миграцию, чтобы переименовать имя столбца, как показано в миграцииизменения миграции показывают в файле схемы, но не в БД
class RenameKpiColumn < ActiveRecord::Migration
def change
rename_column(:key_performance_intervals, :kpi_id, :key_performance_interval_id)
end
end
И тогда я сказал bundle exec rails db:migrate
Если я перейти к schema.rb я вижу это для этой таблицы, так выглядит любит он выбрал новое имя столбца миграции:
create_table "key_performance_intervals", :force => true do |t|
t.integer "key_performance_interval_id"
t.integer "interval"
t.integer "interval_unit"
t.decimal "count"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
Но если я открываю инструмент pgAdmin и посмотреть на столах и имена столбцов там, он все еще использует старое имя столбца kip_id.
Есть ли у меня какие-либо шаги?
Что это говорит вам после запуска 'расслоение Exec Рельсы дб: migrate'? Кроме того, что делает открытие консоли рельсов, выполняя «рельсы c» и запуская «Key_performance_interval» (я полагаю, это ваша модель)? – weltschmerz
@Charles: после запуска rake: migrate, это ничего мне не показывает. Просто идет к следующей строке – 2013-02-13 00:29:06
Обычно это означает, что миграция уже успешно выполнена. Что говорит консоль? Кроме того, я перезапустил postgres и перезапустил рельсы. – weltschmerz