Postgrease
A lightweight, promise-based interface that brings ease to postgres. Postgrease is a wrapper around the node-postgres module.
Installation
npm install --save postgrease
Initialization
Postgrease takes whatever you would use to initialize node-postgres: this can be a connection string, or a config object.
var db = ;var dbconfig = host: 'localhost' database: 'example' user: 'notduncansmith' port: '5432' password: 'mypassword'; var connstring = 'postgres://notduncansmith:mypassword@localhost:5432/example'; db;// db.configure(connstring);
Usage
Important Notes:
-
All Postgrease methods return promises
-
All methods use parameterized queries
query
This is a basic promise wrapper around pg's client.query()
method. It requires one parameter, sql
, the SQL string to execute.
If you want to make a parameterized query, you can also pass a second argument, params
, which should be an array containing the values to be passed.
db;
select
This is a convenience method for selecting records from a database by their id
. It takes an options object with the following properties:
-
params
: an array of ids to select by (you need to use an array, even if you only have one id) -
fields
: an array of fields to select (you can select * by setting fields to['*']
) -
table
: the name of the table to run this query against
var opts = ids: '1''2''3' fields: 'name''email' table: 'users' db;
selectWhere
This is like the select
method, except you pass it a field to select on.
var opts = params: 'notduncansmith' fields: 'name' 'email' searchBy: 'username' table: 'users'; db;
selectAll
This is a convenience method for returning all records from a table. It takes a single parameter, the name of the table you want to select from.
db;
insert
This method allows you to insert an object into a table. It takes two parameters, the object and the table name.
var duncan = username: 'notduncansmith' name: 'Duncan Smith' email: 'hello@duncanmsmith.com'; db;
MIT license, see LICENSE.txt for details.