我错误地将列命名为hased_password而不是hashed_password。
如何使用迁移重命名此列来更新数据库架构?
我错误地将列命名为hased_password而不是hashed_password。
如何使用迁移重命名此列来更新数据库架构?
当前回答
请参阅“活动记录迁移”文档中的“可用转换”部分。
rename_column(table_name, column_name, new_column_name):
重命名列,但保留类型和内容。
其他回答
rails g迁移migrationName
因此,您转到生成的迁移并添加:
rename_column :table, :old_column, :new_column
到方法
从API:
rename_column(table_name, column_name, new_column_name)
这将重命名列,但保持类型和内容不变。
生成迁移文件:
rails g migration FixName
这将创建db/migrate/xxxxxxxxxxx.rb。
编辑迁移以实现您的愿望:
class FixName < ActiveRecord::Migration
def change
rename_column :table_name, :old_column, :new_column
end
end
请参阅“活动记录迁移”文档中的“可用转换”部分。
rename_column(table_name, column_name, new_column_name):
重命名列,但保留类型和内容。
$: rails g migration RenameHashedPasswordColumn
invoke active_record
create db/migrate/20160323054656_rename_hashed_password_column.rb
打开该迁移文件并按如下方式修改该文件(请输入原始table_name)
class RenameHashedPasswordColumn < ActiveRecord::Migration
def change
rename_column :table_name, :hased_password, :hashed_password
end
end