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?
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)
  })
                        You can use
const sql = "select * from ..."
 model.sequelize.query(sql, { type: model.sequelize.QueryTypes.SELECT })
.then(function (rows) {
    ... do a job on the query here...   
 })
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With