You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 lines
940 B

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
5 years ago
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