I get an Unhandled rejection TypeError: feed.create is not a function error, and I cannot understand why this is happening. What is the problem?
Here is my code. I probably am not doing anything very fundamental here, since I cannot achieve the feed variable in the /index.js routes.
If I add module.exports = feed; to my model file, I can achieve this, but I have several models, so if I add additional models under the feed, they override it.
db.js
var Sequelize = require('sequelize'); var sequelize = new Sequelize('mydatabase', 'root', 'root', { host: 'localhost', dialect: 'mysql', port: 8889, pool: { max: 5, min: 0, idle: 10000 }, define: { timestamps: false } }); var db = {}; db.sequelize = sequelize; db.Sequelize = Sequelize; module.exports = db;
models.js
var db = require('./db'), sequelize = db.sequelize, Sequelize = db.Sequelize; var feed = sequelize.define('feeds', { subscriber_id: Sequelize.INTEGER, activity_id: Sequelize.INTEGER }, { tableName: 'feeds', freezeTableName: true });
routes / index.js
var express = require('express'); var router = express.Router(); var models = require('../models'); router.get('/addfeed', function(req,res) { sequelize.sync().then(function () { return feed.create({ subscriber_id: 5008, activity_id : 116 }); }).then(function (jane) { res.sendStatus(jane); }); });