问题描述
我在 Rails 6.1 项目中有一个这样的迁移:
create_table "items",id: false do |t|
t.string "serial_no",limit: 20,first: true,null: false,index: {unique: true}
t.float "price",null: false
t.integer "company_id",limit: 2,null: false
t.integer "product_id",null: false
end
cols = # whatever
values = # whatever
ActiveRecord::Base.connection.execute("INSERT INTO items (#{cols}) VALUES #{values};")
我收到错误:PG::UndefinedTable: ERROR: relation "items" does not exist
我知道如果我将它们分成两个文件,它们会起作用,但我希望这些插入在同一个迁移文件中。
我在插入语句之前尝试了 ActiveRecord::Base.connection.commit_db_transaction
,它起作用了,但随后在保存迁移记录时引发了 ERROR: duplicate key value violates unique constraint "schema_migrations_pkey"
。
任何想法如何在单个迁移文件中执行此操作?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)