aviation-model
Version:
Public methods for querying the information from aviation-pg
91 lines (62 loc) • 2.66 kB
Markdown
This package exposes public methods to retrieve information from the PostgreSQL database created at the aviation-pg module.
The following environment variables are required to configure the connection to the database.
```
PG_HOST=localhost
PG_PORT=5432
PG_DATABASE=aviation
PG_USER=aviator
PG_PASSWORD=null
```
while developing you can also create a `./database.json` with the following details:
```json
{
"host": "localhost",
"port": 5432,
"database": "aviation",
"user": "aviator",
"password": null
}
```
Install via npm with `npm install aviation-model`
>If you haven't created the database with the [aviation-pg](https://github.com/cristobal-io/aviation-pg), the following won't work.
- [getAirlineCities](http://cristobal-io.github.io/aviation-model/global.html#getAirlineCities__anchor)
- [getAirlineData](http://cristobal-io.github.io/aviation-model/global.html#getAirlineData__anchor)
- [getAirportData](http://cristobal-io.github.io/aviation-model/global.html#getAirportData__anchor)
- [getAirportJson](http://cristobal-io.github.io/aviation-model/global.html#getAirportJson__anchor)
- [getCity](http://cristobal-io.github.io/aviation-model/global.html#getCity__anchor)
- [getDestinations](http://cristobal-io.github.io/aviation-model/global.html#getDestinations__anchor)
- [queryData](http://cristobal-io.github.io/aviation-model/global.html#queryData__anchor) (airportData, airlineDestinations, airportRunways, citiesByAirline, radiusAirports, airlines)
Next you have a quick example.
Include the module at your code:
```javascript
var aviationModel = require("aviation-model");
```
Then use as explained in detail at the docs the different methods, a quick example:
```javascript
aviationModel.getAirportJson({
airport_id: "San_Francisco_International_Airport"
}, function (err, airport) {
if (err) {
throw err;
}
console.log("Airport: ",airport);
});
// This will print out:
Airport: { location: '37°37′08″N 122°22′30″W',
airport_id: 'San_Francisco_International_Airport',
latitude: '37°37′08″N',
longitude: '122°22′30″W',
name: 'San Francisco International Airport',
nickname: 'SFO',
iata: 'SFO',
icao: 'KSFO' }
```
Run the command `make test`, this will check with ESLint the code and run the tests, if the `database.json` file is not located, it will return an error.
The default `make` command will do the npm install, update the database formulas with the one needed and will run the tests.
If you want to contribute, create your branch and place a PR or open an issue.