iMad iMad - 5 months ago 193
Node.js Question

Sequelize query is giving TypeError: udefined is not a function

I'm using express and sequelize for my node application. On the controller file, I have the following:

var models = require('../models'),
Property = models.property,
Sequelize = require('sequelize');

module.exports = function(req, res){
Sequelize.query("SELECT * FROM 'property'", { type:Sequelize.QueryTypes.SELECT})
.then(function(properties) {
res.json(properties)
})
}


I can use model.findAll fine but when I try to use raw query, I'm getting the TypeError: undefined is not a function. Can you point what I'm doing wrong in this code?

Answer

You need to be calling query() on a Sequelize instance instead:

var Sequelize = require('sequelize');
var sequelize = new Sequelize('database', 'username', 'password');

sequelize.query("SELECT * FROM 'property'", { type:Sequelize.QueryTypes.SELECT})
   .then(function(properties) {
      res.json(properties)
  })
Comments