diff options
Diffstat (limited to 'lib/db')
| -rw-r--r-- | lib/db/bookshelf.js | 17 | ||||
| -rw-r--r-- | lib/db/index.js | 47 |
2 files changed, 64 insertions, 0 deletions
diff --git a/lib/db/bookshelf.js b/lib/db/bookshelf.js new file mode 100644 index 0000000..5774120 --- /dev/null +++ b/lib/db/bookshelf.js @@ -0,0 +1,17 @@ +var knex = require('knex')({ + client: 'mysql2', + connection: { + host : process.env.DB_HOST, + user : process.env.DB_USER, + password : process.env.DB_PASS, + database : process.env.DB_NAME, + charset : 'utf8' + } +}) + +var bookshelf = require('bookshelf')(knex) + +module.exports = { + bookshelf: bookshelf, + knex: knex, +} diff --git a/lib/db/index.js b/lib/db/index.js new file mode 100644 index 0000000..e820758 --- /dev/null +++ b/lib/db/index.js @@ -0,0 +1,47 @@ +var db = module.exports + +var connection = require("./bookshelf") +var bookshelf = connection.bookshelf +var knex = connection.knex + +/* MODELS */ + +var User = db.User = bookshelf.Model.extend({ + tableName: 'users', + hasTimestamps: true, +}) +var Thread = db.Thread = bookshelf.Model.extend({ + tableName: 'threads', + hasTimestamps: true, +}) +var Comment = db.Comment = bookshelf.Model.extend({ + tableName: 'comments', + hasTimestamps: true, +}) +var File = db.File = bookshelf.Model.extend({ + tableName: 'files', + hasTimestamps: true, +}) +var Keyword = db.Keyword = bookshelf.Model.extend({ + tableName: 'keywords', + hasTimestamps: true, +}) +var Mailbox = db.Mailbox = bookshelf.Model.extend({ + tableName: 'boxes', + hasTimestamps: true, +}) +var Message = db.Message = bookshelf.Model.extend({ + tableName: 'messages', + hasTimestamps: true, +}) + +/* PICTURES */ + +db.createUser = function(data){ + return new db.User(data).save() +} +db.getUsers = function (callback) { + return User.query(function(qb){ + qb.orderBy("id", "desc") + }).fetchAll() +} |
