- Did the unthinkable and actually achieved Peak ORM

This commit is contained in:
Alexis
2020-06-06 00:17:01 +02:00
parent cabbf68f7a
commit 369d53d509
9 changed files with 381 additions and 394 deletions

View File

@@ -0,0 +1,33 @@
'use strict'
// Bookshelf
const bookshelf = require('../database/connection').bookshelf
const Spells = require('./spell-repository')
const MetaSchoolRepository = require('./meta-school-repository')
const MetaSchools = new MetaSchoolRepository()
class SchoolRepository {
constructor() {
this.model = bookshelf.Model.extend({
tableName: 'school',
spells() {
return this.belongsToMany( Spells._model, 'spell_school', 'school_id', 'spell_id')
},
meta_schools() {
return this.belongsTo( MetaSchools._model, 'meta_school_id')
}
})
}
set model(model) {
this._model = model
}
get model() {
return this._model
}
}
module.exports = SchoolRepository