index: Hiermit wird eine bestimmte Spalte in der Tabelle dupliziert, um die Suche zu beschleunigen.
Erstellen Sie eine Spalte user_id mit den folgenden Referenzen: t.references: user und index user_id. (Keine externe Schlüsselbeschränkung)
Foreign_key: true: Fügt eine Fremdschlüsseleinschränkung ein. Verhindert, dass die ID eines nicht vorhandenen Benutzers in user_id registriert wird. Verhindert Fehler, die Datensätze in der übergeordneten Tabelle löschen.
add_foreign_key (: articles ,: users) fügt einen Index hinzu, wenn kein Index vorhanden ist, und verwendet ihn erneut, falls vorhanden. Daher ist die Reihenfolge des Hinzufügens externer Schlüsseleinschränkungen → Einfügen von Indizes nicht akzeptabel.
Schienen g Modell Artikel Körper: Text Benutzer: Referenzen
migrationfile.rb
class CreateArticles < ActiveRecord::Migration[5.2]
def change
create_table :articles do |t|
t.text :body
t.references :user, foreign_key: true
t.timestamps
end
end
end
Recommended Posts