Je suis confus au sujet de belongs_to et de la clé étrangère dans les rails. Lorsque nous utilisons belongs_to dans les migrations de rails, il semble qu'il crée une clé étrangère sur la table enfant à laquelle nous pouvons accéder à partir de la table parent. Cependant, dans la documentation sur les rails, il y a une situation qui utilise les deux dans une colonne. Quelqu'un peut-il expliquer cette situation et expliquer ce que appartient_to et foreign_key: true fait exactement cela?Qu'est-ce que belongs_to crée dans les migrations de rails et dans la structure de base de données?
Q
Qu'est-ce que belongs_to crée dans les migrations de rails et dans la structure de base de données?
0
A
Répondre
1
t.belongs_to :supplier
ajoute supplier_id
à accounts
.
index: { unique: true }
crée un database index pour la colonne.
foreign_key: true
crée un foreign key constraint pour la colonne.
Je vous recommande de lire Active Record Migrations — Ruby on Rails Guides.
Les index accélèrent les opérations de récupération de données.
Les clés étrangères aident à maintenir referential integrity.
donc t.belongs_to: fournisseur égal à t.integer: fournisseur_id? – cengo