39 lines
940 B
JavaScript
39 lines
940 B
JavaScript
const Model = require('flitter-orm/src/model/Model')
|
|
const uuid = require('uuid/v4')
|
|
|
|
/*
|
|
* DBEntry Model
|
|
* -------------------------------------------------------------
|
|
* Put some description here!
|
|
*/
|
|
class DBEntry extends Model {
|
|
static get schema() {
|
|
// Return a flitter-orm schema here.
|
|
return {
|
|
DatabaseId: String,
|
|
RowData: Object,
|
|
UUID: { type: String, default: () => uuid() },
|
|
}
|
|
}
|
|
|
|
// Static and instance methods can go here
|
|
to_api_object() {
|
|
return {
|
|
uuid: this.UUID,
|
|
database_id: this.DatabaseId,
|
|
data: this.RowData,
|
|
}
|
|
}
|
|
|
|
static async from_cursor(cursor) {
|
|
const arr = await cursor.toArray()
|
|
const collection = []
|
|
for ( const rec of arr ) {
|
|
collection.push(new this(rec))
|
|
}
|
|
return collection
|
|
}
|
|
}
|
|
|
|
module.exports = exports = DBEntry
|