[英]Rails: How to use BIGINT as Primary Key
我已經閱讀了很多文章,討論了如何在Rails中使用BIGINT
作為主鍵,但是似乎所有這些都已過時。
如何將BIGINT用作主鍵,最好僅在全局范圍內進行設置。 (我知道性能上的差異)
我嘗試過的事情:
如果您的應用程序本機內置在rails '>= 5.1'
,則您的主鍵應該已經是BIGINT
。 “本機構建”是指您的遷移最初是使用該Rails版本運行的(與在<5.1中運行它們,然后在以后更新gem相對)
如果它們還不是BIGINT
,則可以使用以下源代碼中的遷移操作,為方便起見,將其粘貼在此處:
change_column :your_table_name, :id, :bigint
您是否在遷移文件中嘗試過此代碼?
def change
create_table :table_name, id: false do |t|
t.bigint :id, null: false
t.index :id, name: "pk_table_name", unique: true
end
end
並在模型中:
class ModelName < ApplicationRecord
self.primary_key = :id
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.