gpt4 book ai didi

ruby-on-rails - 如何更改 Rails 3 中的列名称?

转载 作者:搜寻专家 更新时间:2023-10-30 19:40:23 28 4
gpt4 key购买 nike

基本上我不小心写了 password_has 而不是 password_hash 并且我认为通过 rake db:rollback 我可以进行适当的更改然后做 rake db:migrate 和 rake db:reset 但似乎更改没有在 mysql 中发生..我保持收到错误..我该怎么办?理想情况下,我想销毁数据库并重新启动它,但它不会销毁它,因为当我这样做并尝试重新创建它时,它说它仍然有一个已经创建的副本。我在这里疯了,请帮助我新手!

最佳答案

您可以编写重命名迁移。将其生成为:

rails g migration RenameColumn

接下来,在生成的迁移文件中应用以下代码来重命名该列:

 class RenameColumn < ActiveRecord::Migration
def self.up
rename_column :table_name, :old_column, :new_column
end

def self.down
# rename back if you need
end
end

迁移运行后,避免回滚修改。写一个新的来代替。

如果 rake db:migrate 出现错误,请尝试只运行您需要的那个:

rake db:migrate:up VERSION=20130405061213

只需替换正确的版本(它在您的迁移文件名中)。x

关于ruby-on-rails - 如何更改 Rails 3 中的列名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16867854/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com