J'ai créé un fichier de migration comme d'habitude et lorsque j'ai essayé rails db: migrate, j'ai eu l'erreur suivante:
Column user_id
on table entries
does not match column id
on users
, which has type bigint(20)
. To resolve this issue, change the type of the user_id
column on entries
to be :bigint. (For example t.bigint :user_id
).
Comme indiqué, bigint a été spécifié comme indiqué ci-dessous et la migration a été effectuée à nouveau.
class CreateEntries < ActiveRecord::Migration[5.1]
def change
create_table :entries do |t|
t.references :user, foreign_key: true, type: :bigint //Changement d'entier en bigint
t.references :room, foreign_key: true
t.timestamps
end
end
end```
Cependant, une erreur similaire est apparue.
En fait, à ce moment, trois fichiers de migration ont été créés en même temps, et une erreur s'est produite car la date et l'heure de création du fichier de migration (salle) requis pour enregistrer le fichier de migration ci-dessus étaient les dernières.
J'ai changé le nom du fichier en date et heure de création du fichier de la salle, et j'ai exécuté rails db: migrate à nouveau, et cela a réussi sans problème.
Recommended Posts