gpt4 book ai didi

ruby-on-rails - Rails 迁移不会改变 schema.rb

转载 作者:行者123 更新时间:2023-12-03 10:50:25 25 4
gpt4 key购买 nike

我有一个未应用于我的 schema.rb 的 rails 迁移。迁移应该创建一个表:

class CreateUserGraphs < ActiveRecord::Migration
def change
create_table :user_graphs do |t|
t.string :name
t.string :content
t.integer :user_id
t.string :type_id
t.integer :upload_id

t.timestamps
end

add_index :user_graphs, [:user_id, :created_at]
end
end

我做了 db:reset。然后我尝试 rake db:migrate:up VERSION=123123123(这是迁移#)。我在我的“开发”环境中。

为什么迁移不会影响 schema.rb?

最佳答案

来自 documentation :
rake db:reset任务将删除数据库,重新创建它并将当前模式加载到其中。

This is not the same as running all the migrations. It will only use the contents of the current schema.rb file. If a migration can't be rolled back, 'rake db:reset' may not help you. To find out more about dumping the schema see 'schema dumping and you.'



所以 rake db:reset => db:drop db:create db:schema:load db:seed
要运行所有迁移,请使用: rake db:drop db:create db:migrate
或者 db:migrate:reset => rake db:drop db:create db:migrate
Reference

关于ruby-on-rails - Rails 迁移不会改变 schema.rb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20464924/

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