2015-03-10 5 views
7

Ich habe zwei Tabellen, die ich zuordnen muss. TabelleA hat eine TabelleB. Ich bin in der Lage dies im TableA Modell zu tun:Sequelize Join auf nicht primären Schlüssel

TableA.hasOne(models.TableB, { as: 'TableB', foreignKey: 'someID' }); 

auf SQL-Suche, versucht diese TableA.ID und TableB.someID beizutreten. Was ich eigentlich will, ist TableA.someNonPrimaryKey und TableB.someID zu verbinden.

Wie kann ich Sequelize erzählen, um mit etwasNonPrimaryKey zu verbinden?

+1

Die in sequelize im Moment nicht möglich ist –

Antwort

2

Dies ist in Sequelize im Moment nicht möglich, aber Sie können diesen Weg versuchen.

Unterschied zwischen HasOne und BelongsTo, HasOne fügt den Assoziationsschlüssel in das Zielmodell ein, während BelongsTo den Assoziationsschlüssel in das Quellenmodell einfügt. Verein eher hasOne gleich Gehört

TableB.belongsTo(models.TableA, { as: 'TableA', foreignKey: 'someID', targetKey: 'notTableAID' }); 
+0

metioned ‚TARGETKEY‘, die ich nicht in der Dokumentation bemerkt – renatoargh

Verwandte Themen