Frage

Ich versuche, ein Folgenmodell für eine Tabelle mit einem zu erstellen, das eine hat options Spalte, aber ich erhalte einen Fehler, wenn ich eine Abfrage versuche (wie zum Beispiel Find):

/Users/camupod/node_modules/sequelize/lib/sequelize/model.js:17
  var defaults = this.options.hasPrimaryKeys ? {} : { id: null }
                             ^
TypeError: Cannot read property 'hasPrimaryKeys' of null
    at new <anonymous> (/Users/camupod/node_modules/sequelize/lib/sequelize/model.js:17:30)
    at [object Object].build (/Users/camupod/node_modules/sequelize/lib/sequelize/model-definition.js:140:18)
    at /Users/camupod/node_modules/sequelize/lib/sequelize/query.js:47:64
    at Array.map (native)
    at [object Object].onSuccess (/Users/camupod/node_modules/sequelize/lib/sequelize/query.js:47:22)
    at /Users/camupod/node_modules/sequelize/lib/sequelize/query.js:22:38
    at Query.<anonymous> (/Users/camupod/node_modules/mysql/lib/client.js:108:11)
    at Query.emit (events.js:61:17)
    at Query._handlePacket (/Users/camupod/node_modules/mysql/lib/query.js:51:14)
    at Client._handlePacket (/Users/camupod/node_modules/mysql/lib/client.js:312:14)

Und die Definition meines Modells:

Model.recording = sequelize.define(
    'recordings',
    {
        /* other columns... */
        options: Sequelize.TEXT
    },
    {
        timestamps: false,
        freezeTableName: true
    }
);

Erlaubt es wirklich nicht options Als Spaltenname oder mache ich etwas falsch?

War es hilfreich?

Lösung

Nun, das ist eine ziemlich dumme "Edgecase". Das Definieren eines Attributs namens "Optionen" überschreibt die Optionen des Modells: D, das saugt :(.

Das Problem wurde gerade behoben und der Bugfix ist in v1.1.3 verfügbar. Bitte lassen Sie mich wissen, ob das funktioniert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top