Ich habe ein Problem mit SQL Alchemy, beim Versuch, eine Datenbank zu erstellen, bekomme ich:
"sqlalchemy.exc.NoReferencedTableError: Der mit Die Spalte 'estate_agent.person_id' konnte die Tabelle 'person' nicht finden welche einen Fremdschlüssel zur Zielspalte 'id' "
generiert
Meta-Daten:
%Vor%Personentabelle:
%Vor%Bug-Tabelle:
%Vor%Normale Tabelle (normalerweise fk)
%Vor%Erstellungsanruf:
%Vor%Vollständiges Fehlerprotokoll:
Traceback (letzter Aufruf zuletzt): Datei "database_client.py", Zeile 159, in meta.create_all (checkfirst = True) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/schema.py", Zeile 3404, in create_all Tabellen = Tabellen) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", Zeile 1616, in _run_visitor conn._run_visitor (visitorcallable, element, ** kwargs) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", Zeile 1245, in _run_visitor ** kwargs) .traverse_single (element) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/visitors.py", Linie 120, in Traverse_single return meth (obj, ** kw) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/ddl.py", Zeile 699, in visit_metadata collection = [t für t in sort_tables (Tabellen) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/ddl.py", Zeile 862, in sort_tables {'foreign_key': visit_foreign_key}) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/visitors.py", Linie 256, in Querrichtung return traverse_using (iterate (obj, opts), obj, Besucher) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/visitors.py", Zeile 247, in traverse_using meth (target) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/sql/ddl.py", Zeile 853, in visit_foreign_key parent_table = fkey.column.table Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/langhelpers.py", Zeile 725, in get obj. dict [selbst. name ] = result = self.fget (obj) Datei "/usr/local/lib/python2.7/dist-packages/sqlalchemy/ sql / schema.py ", Zeile 1720, in der Spalte tablekey) sqlalchemy.exc.NoReferencedTableError: Der mit Die Spalte 'estate_agent.person_id' konnte die Tabelle 'person' nicht finden welche einen Fremdschlüssel zur Zielspalte 'id' erzeugen soll
Durch das Hinzufügen der folgenden Zeile zu meiner Tabelle parent
löste ich mein Problem. Im Falle von Deklarativ:
Ansonsten: SQLAlchemy - Klassischer Mapper
Versuchen Sie auch, sich in hier (SO) umzusehen .
Die Lösung besteht darin, die Zeichenfolgen durch tatsächliche Spalten zu ersetzen:
%Vor%Tags und Links python postgresql python-2.7 sqlalchemy