diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2018-05-29 00:26:39 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2018-05-29 00:26:39 +0200 |
| commit | f82d95c5f5b589bec0fc503c86f9e644b07b4ddd (patch) | |
| tree | 122b7fdac2598b0b4e9c1d32abf9c72f021b83cf | |
| parent | a77ddf4bf8ad8aeb91e2109a7c4a92149928b57b (diff) | |
create datasets model
| -rw-r--r-- | app/server/db/crud.js | 4 | ||||
| -rw-r--r-- | app/server/db/models.js | 35 | ||||
| -rw-r--r-- | app/server/site.js | 2 | ||||
| -rw-r--r-- | migrations/20170628233335_createFolders.js | 4 | ||||
| -rw-r--r-- | migrations/20170628233613_createFiles.js | 2 | ||||
| -rw-r--r-- | migrations/20170628233706_createJobs.js | 15 | ||||
| -rw-r--r-- | migrations/20170628234104_createTasks.js | 1 | ||||
| -rw-r--r-- | migrations/20180529000627_createUsers.js | 3 | ||||
| -rw-r--r-- | migrations/20180529002311_createDatasets.js | 21 |
9 files changed, 56 insertions, 31 deletions
diff --git a/app/server/db/crud.js b/app/server/db/crud.js index 3aa0127..78dfc6e 100644 --- a/app/server/db/crud.js +++ b/app/server/db/crud.js @@ -25,8 +25,8 @@ module.exports = function(model) { return qb }).fetchAll() }, - show: (id) => { - return new model({'id': id}).fetch() + show: (id, field='id') => { + return new model({[field]: id}).fetch() }, show_ids: (ids) => { return model.query( (qb) => { diff --git a/app/server/db/models.js b/app/server/db/models.js index 1ca87d0..5e1cf6e 100644 --- a/app/server/db/models.js +++ b/app/server/db/models.js @@ -10,37 +10,52 @@ let File = bookshelf.Model.extend({ tableName: 'files', hasTimestamps: true, }) -let Job = bookshelf.Model.extend({ - tableName: 'jobs', - hasTimestamps: true, -}) let Task = bookshelf.Model.extend({ tableName: 'tasks', hasTimestamps: true, }) +let User = bookshelf.Model.extend({ + tableName: 'user', + hasTimestamps: true, +}) +let Dataset = bookshelf.Model.extend({ + tableName: 'datasets', + hasTimestamps: true, +}) module.exports = { folder: model('folder', Folder, { - fields: "name username description".split(" "), + fields: "name datatype username activity module checkpoint opt created_at updated_at".split(" "), afterCreate: (folder) => { console.log('created folder', folder.get('id'), folder.get('name')) } }), file: model('file', File, { - fields: "folder_id username name mime type duration analysis size processed generated".split(" "), + fields: "folder_id username name url mime datatype duration analysis size activity module checkpoint dataset epoch opt processed generated created_at updated_at".split(" "), afterCreate: (file) => { console.log('created file') // bridge.processFiles() } }), - job: model('job', Job, { - fields: "name username completed tool".split(" "), - }), task: model('task', Task, { - fields: "job_id username completed processing tool alpha iterations stdout stderr".split(" "), + fields: "username completed processing status activity module checkpoint dataset folder_id file_id output_file_id opt epoch epochs stdout stderr created_at updated_at".split(" "), afterCreate: (task) => { console.log('created task') // bridge.processTasks() } }), + dataset: model('task', Task, { + fields: "username completed processing status activity module checkpoint dataset opt created_at updated_at".split(" "), + afterCreate: (task) => { + console.log('created dataset') + // bridge.processTasks() + } + }), + user: model('task', Task, { + fields: "username password realname level avatar lastseen profile created_at updated_at".split(" "), + afterCreate: (task) => { + console.log('created user') + // bridge.processTasks() + } + }), } diff --git a/app/server/site.js b/app/server/site.js index f75c644..264f59b 100644 --- a/app/server/site.js +++ b/app/server/site.js @@ -22,7 +22,7 @@ import { api } from './util/api' const api_folders = api(app, 'folder') const api_files = api(app, 'file') -const api_jobs = api(app, 'job') +const api_datasets = api(app, 'dataset') const api_tasks = api(app, 'task') upload.init() diff --git a/migrations/20170628233335_createFolders.js b/migrations/20170628233335_createFolders.js index 908a4fc..9311136 100644 --- a/migrations/20170628233335_createFolders.js +++ b/migrations/20170628233335_createFolders.js @@ -5,6 +5,10 @@ exports.up = function(knex, Promise) { table.string('name') table.string('datatype') // video, audio, audio spectrogram table.string('username') + table.string('activity') + table.string('module') + table.string('checkpoint') + table.json('opt') table.timestamps() }) }; diff --git a/migrations/20170628233613_createFiles.js b/migrations/20170628233613_createFiles.js index bb2da3c..99336bf 100644 --- a/migrations/20170628233613_createFiles.js +++ b/migrations/20170628233613_createFiles.js @@ -7,7 +7,7 @@ exports.up = function(knex, Promise) { table.string('name') table.string('url') table.string('mime') - table.string('type') + table.string('datatype') table.float('duration') table.text('analysis') table.integer('size') diff --git a/migrations/20170628233706_createJobs.js b/migrations/20170628233706_createJobs.js deleted file mode 100644 index 4b17c6f..0000000 --- a/migrations/20170628233706_createJobs.js +++ /dev/null @@ -1,15 +0,0 @@ - -exports.up = function(knex, Promise) { - return knex.schema.createTable('jobs', function (table) { - table.increments() - table.string('name') - table.string('username') - table.boolean('completed') - table.string('tool') - table.timestamps() - }) -}; - -exports.down = function(knex, Promise) { - return knex.schema.dropTable('jobs') -}; diff --git a/migrations/20170628234104_createTasks.js b/migrations/20170628234104_createTasks.js index 7329fc8..8f6430a 100644 --- a/migrations/20170628234104_createTasks.js +++ b/migrations/20170628234104_createTasks.js @@ -2,7 +2,6 @@ exports.up = function(knex, Promise) { return knex.schema.createTable('tasks', function (table) { table.increments() - table.integer('job_id') table.string('username') table.boolean('completed') table.boolean('processing') diff --git a/migrations/20180529000627_createUsers.js b/migrations/20180529000627_createUsers.js index 3f86d5a..5346555 100644 --- a/migrations/20180529000627_createUsers.js +++ b/migrations/20180529000627_createUsers.js @@ -5,7 +5,8 @@ exports.up = function(knex, Promise) { table.string('username')
table.string('password')
table.string('realname')
- table.string('level')
+ table.integer('level')
+ table.string('avatar')
table.datetime('lastseen')
table.json('profile')
table.timestamps()
diff --git a/migrations/20180529002311_createDatasets.js b/migrations/20180529002311_createDatasets.js new file mode 100644 index 0000000..41cd457 --- /dev/null +++ b/migrations/20180529002311_createDatasets.js @@ -0,0 +1,21 @@ +
+exports.up = function(knex, Promise) {
+ return knex.schema.createTable('datasets', function (table) {
+ table.increments()
+ table.string('username')
+ table.boolean('completed')
+ table.boolean('processing')
+ table.string('status')
+ table.string('status')
+ table.string('activity')
+ table.string('module')
+ table.string('checkpoint')
+ table.string('dataset')
+ table.json('opt')
+ table.timestamps()
+ })
+};
+
+exports.down = function(knex, Promise) {
+ return knex.schema.dropTable('datasets')
+};
|
