aviation-model
Version:
Public methods for querying the information from aviation-pg
116 lines (100 loc) • 1.7 kB
JavaScript
;
/*
eslint-disable no-console
*/
var Sequelize = require("sequelize");
/**
* Details for the connection.
*/
var sequelize = new Sequelize("aviation", "aviator", null, {
host: "localhost",
dialect: "postgres",
port: 5432,
pool: {
max: 5,
min: 0,
idle: 1 + 1000
}
});
/**
* Define module airport
*/
var Airport = sequelize.define("airport", {
airport_id: {
type: Sequelize.STRING,
primaryKey: true
},
latitude: {
type: Sequelize.TEXT
},
longitude: {
type: Sequelize.TEXT
},
name: {
type: Sequelize.TEXT
},
nickname: {
type: Sequelize.TEXT
},
iata: {
type: Sequelize.TEXT
},
icao: {
type: Sequelize.TEXT
}
}, {
getterMethods: {
getName: function () {
return this.name;
}
},
tableName: "airports",
timestamps: false
});
/**
* Connexion sample
*/
sequelize
.authenticate()
.then(function (err) {
if (err) {
throw err;
}
console.log("Connection has been established successfully.");
}, function (err) {
console.log("Unable to connect to the database:", err);
});
/**
* getterMethods working
*/
/*
Single
*/
Airport.findOne({
where: {
icao: "LEAL"
}
}).then(function (alicante) {
console.log(alicante.dataValues);
console.log(alicante.getName);
});
/*
Multiple
*/
Airport.findAll({
where: {
icao: "LEVC"
}
}).then(function (result) {
console.log(Airport);
console.log(JSON.stringify(result[0].dataValues, null, 2));
console.log(result[0].name);
});
// Airport.sync().then(function() {
// console.log("hello world!");
// Airport.findAll({
// where:{
// icao: "LEVC"
// }
// });
// });