0.0.20 • Published 7 years ago

gestalt-postgres v0.0.20

Weekly downloads
4
License
MIT
Repository
github
Last release
7 years ago

gestalt-postgres

npm version

A PostgreSQL database adapter for the Gestalt framework

Example

import gestaltPostgres from 'gestalt-postgres';

const adapter = gestaltPostgres({
  databaseURL: 'postgres://localhost/your-db'
});

Query helper API

Gestalt-postgres will add a query helper, db, to the GraphQL query context. This helper has the following API:

  • exec(query: string, escapes?: Array<mixed>): Promise<Object> runs the query using node-postgres, and returns the result directly with no formatting.
  • count(query: string, escapes?): Promise<number> runs the query, pareses the result and returns a promised number.
  • find(query: string, escapes?): Promise<Object>) runs the query, throws an error if there is not exactly one row selected, and then formats the result. Returns a promised object formatted {camelCaseColumnName: value}.
  • query(query: string, escapes?): Promise<Object[]>) runs the query, and returns an array of objects formatted {camelCaseColumnName: value}.
  • insert(table: string, object: Object): Promise<Object> converts camel case keys in the object argument to column names, and inserts their values into table. It returns the inserted row as a promised object formatted {camelCaseColumnName: value}.
  • deleteBy(table: string, conditions: Object): Promise<Object> converts camel case keys in the conditions argument to column names, and deletes matching rows. Returns the result from node-postgres directly with no formatting.
  • findBy(table: string, conditions: Object): Promise<Object> converts camel case keys in the conditions argument to column names, and runs a query selecting matching rows. Throws an error unless exactly one row is selected, and returns the result as a promised object formatted {camelCaseColumnName: value}.
  • queryBy(table: string, conditionsL Object): Promise<Object[]> converts camel case keys in the conditions argument to column names, and runs a query selecting matching rows. Returns the result as a promised array of objects formatted {camelCaseColumnName: value}.
0.0.20

7 years ago

0.0.19

7 years ago

0.0.18

7 years ago

0.0.17

8 years ago

0.0.16

8 years ago

0.0.15

8 years ago

0.0.14

8 years ago

0.0.13

8 years ago

0.0.12

8 years ago

0.0.11

8 years ago

0.0.10

8 years ago

0.0.9

8 years ago

0.0.8

8 years ago

0.0.7

8 years ago

0.0.6

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago