将sequelize和express.js的数据转换为离子数据

时间:2015-05-01 12:07:53

标签: node.js express ionic sequelize.js

我一直在努力解决这个问题,并且无法在互联网上找到任何关于它的内容,所以我想知道是否有人有使用Sequelize获取Ionic数据的经验以及Express.js

这是我得到的照片:

app.js

var express = require('express');
var app = express();
var path = require('path');

var routes = require('./routes/index');
var cars = require('./routes/cars') (app);

app.use('/cars', cars);

路由/ cars.js

var models  = require('../models');
var express = require('express');
var router    = express.Router();

router.get('/cars', function(req, res) {
  models.Car.findAll()
  .then(function(data){
      res.json(data);
  })
  .catch(function(error){
      console.log("ops: " + error);
    res.status(500).json({ error: 'error' });
   });
});

module.exports = router;

模型/ cars.js

"use strict";

module.exports = function(sequelize, DataTypes) {

    var Car = sequelize.define("Car", {
        name: DataTypes.STRING,
        favorite:  DataTypes.INTEGER
    }, {
        freezeTableName: true,
        tableName: 'car'
    });
    return Car;
};

我尝试了多种方法让它工作,但当我转到http://localhost:8100/cars浏览器输出时:

Cannot GET /cars

有人可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

当您使用express.Router()时,您需要告诉应用使用您的路由器: http://expressjs.com/4x/api.html#router

router = require('./routes/cars')
app.use('/', router);

答案 1 :(得分:0)

你暴露了路线' / cars'在app.js和' / cars'作为cars.js中的子路由导致' / cars / cars'