[RAILS] Schienen c starten nicht und es tritt eine große Anzahl von Leitungsfehlern auf

Problem

Ich habe versucht, die Konsole mit Rails c ungefähr nach dem Erstellen der Zwischentabelle zu starten, aber ich habe den folgenden Fehler erhalten

: Unknown key: :throught. Valid keys are: :class_name, :anonymous_class, :foreign_key, :validate, :autosave, :table_name, :before_add, :after_add, :before_remove, :after_remove, :extend, :primary_key, :dependent, :as, :through, :source, :source_type, :inverse_of, :counter_cache, :join_table, :foreign_type, :index_errors (ArgumentError)

Schienen s liefen auch nicht an.

Fazit

Die Zuordnung der Zwischentabelle war falsch. Nach dem Ändern wie folgt wird es durch db: migrate: reset gelöst.

Es gab eine Raumbenutzertabelle als Zwischentabelle zwischen der Raumtabelle und der Benutzertabelle. Der Verein war wie folgt organisiert. Da db: migriert wurde und die Tabellenbeziehung seltsam war, wurde dies gelöst, indem die Tabelle mit db: migrate: reset gelöscht und neu erstellt und db: migrate ausgeführt wurde.

Fehler

(Raummodell)
class Room < ApplicationRecord
  has_many :rooms, through: :room_users
  has_many :room_users
end
(Benutzermodell)
  has_many :rooms, through: :room_users
  has_many :room_users

Es gibt zwei Fehler.

  1. Reihenfolge der Beschreibung Sie verwenden room_users in through, bevor Sie has_many: room_users schreiben.
  2. Modellname Ich habe eine Assoziation mit mir selbst im Raummodell.

Überarbeitet

(Raummodell)
class Room < ApplicationRecord
  has_many :room_users
  has_many :users, through: :room_users
end
(Benutzermodell)
  has_many :room_users
  has_many :rooms, through: :room_users

Warum sind Assoziationen mit Schienen s und Schienen verbunden? C.

Durchlaufen der Datenbank- und Migrationsdateien beim Starten der Konsole oder des lokalen Servers. Ich habe einen Fehler ohne die Migrationsdatei erhalten und die Konsole und der lokale Server wurden nicht gestartet.

das ist alles.

Recommended Posts

Schienen c starten nicht und es tritt eine große Anzahl von Leitungsfehlern auf
Viele Fehlerzeilen ... Der Rails-Server startet nicht 2. "Autodetect ': JavaScript-Laufzeit konnte nicht gefunden werden."
Localhost3000 wird in der Docker / Rails-Entwicklung nicht gestartet.
Terminal startet nicht
Port C-Code mit vielen Typecasts zu Swift
Tipps, wenn Sie beim Ersetzen einer Zeichenfolge viele Zeilenumbrüche und Tabulatoren einfügen möchten
Erstellen eines gemischten bedingten Ausdrucks von Rails if-Anweisung und sofern nicht