From: Guillaume Pellerin Date: Fri, 25 Apr 2014 18:31:32 +0000 (+0200) Subject: Rename Parameters to Preset, add preset to Experience X-Git-Tag: 0.5.5~1^2~44 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=2cb97688f0d5c250185c085e17954deae7443557;p=timeside.git Rename Parameters to Preset, add preset to Experience --- diff --git a/tests/server/diagram/timeside.dot b/tests/server/diagram/timeside.dot index 5ec8a86..98bda6f 100644 --- a/tests/server/diagram/timeside.dot +++ b/tests/server/diagram/timeside.dot @@ -349,19 +349,19 @@ digraph model_graph { - hdf5 + file FileField - output + hdf5 FileField - output_mime_type + mime_type CharField diff --git a/tests/server/diagram/timeside.pdf b/tests/server/diagram/timeside.pdf index 5c5ec6d..69293f2 100644 Binary files a/tests/server/diagram/timeside.pdf and b/tests/server/diagram/timeside.pdf differ diff --git a/timeside/admin.py b/timeside/admin.py index a6f882b..9ad18c1 100644 --- a/timeside/admin.py +++ b/timeside/admin.py @@ -6,7 +6,7 @@ admin.site.register(Selection) admin.site.register(Item) admin.site.register(Experience) admin.site.register(Processor) -admin.site.register(Parameters) +admin.site.register(Preset) admin.site.register(Result) admin.site.register(Task) diff --git a/timeside/migrations/0006_auto__del_parameters__add_preset__del_field_result_parameters__add_fie.py b/timeside/migrations/0006_auto__del_parameters__add_preset__del_field_result_parameters__add_fie.py new file mode 100644 index 0000000..5f9d3fe --- /dev/null +++ b/timeside/migrations/0006_auto__del_parameters__add_preset__del_field_result_parameters__add_fie.py @@ -0,0 +1,220 @@ +# -*- coding: utf-8 -*- +from south.utils import datetime_utils as datetime +from south.db import db +from south.v2 import SchemaMigration +from django.db import models + + +class Migration(SchemaMigration): + + def forwards(self, orm): + # Deleting model 'Parameters' + db.delete_table('timeside_parameters') + + # Adding model 'Preset' + db.create_table('timeside_presets', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('processor', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='preset', null=True, to=orm['timeside.Processor'])), + ('parameters', self.gf('django.db.models.fields.TextField')(blank=True)), + ('is_public', self.gf('django.db.models.fields.BooleanField')(default=False)), + )) + db.send_create_signal('timeside', ['Preset']) + + # Deleting field 'Result.parameters' + db.delete_column('timeside_results', 'parameters_id') + + # Adding field 'Result.preset' + db.add_column('timeside_results', 'preset', + self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='results', null=True, on_delete=models.SET_NULL, to=orm['timeside.Preset']), + keep_default=False) + + + # Changing field 'Result.hdf5' + db.alter_column('timeside_results', 'hdf5', self.gf('django.db.models.fields.files.FileField')(default=0, max_length=1024)) + + # Changing field 'Result.file' + db.alter_column('timeside_results', 'file', self.gf('django.db.models.fields.files.FileField')(default=0, max_length=1024)) + # Deleting field 'Experience.is_preset' + db.delete_column('timeside_experiences', 'is_preset') + + # Adding field 'Experience.is_public' + db.add_column('timeside_experiences', 'is_public', + self.gf('django.db.models.fields.BooleanField')(default=False), + keep_default=False) + + # Removing M2M table for field processors on 'Experience' + db.delete_table(db.shorten_name('timeside_experiences_processors')) + + # Adding M2M table for field presets on 'Experience' + m2m_table_name = db.shorten_name('timeside_experiences_presets') + db.create_table(m2m_table_name, ( + ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), + ('experience', models.ForeignKey(orm['timeside.experience'], null=False)), + ('preset', models.ForeignKey(orm['timeside.preset'], null=False)) + )) + db.create_unique(m2m_table_name, ['experience_id', 'preset_id']) + + + def backwards(self, orm): + # Adding model 'Parameters' + db.create_table('timeside_parameters', ( + ('parameters', self.gf('django.db.models.fields.TextField')(blank=True)), + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('is_preset', self.gf('django.db.models.fields.BooleanField')(default=False)), + ('processor', self.gf('django.db.models.fields.related.ForeignKey')(related_name='parameters', null=True, to=orm['timeside.Processor'], blank=True)), + )) + db.send_create_signal('timeside', ['Parameters']) + + # Deleting model 'Preset' + db.delete_table('timeside_presets') + + # Adding field 'Result.parameters' + db.add_column('timeside_results', 'parameters', + self.gf('django.db.models.fields.related.ForeignKey')(related_name='results', null=True, to=orm['timeside.Parameters'], on_delete=models.SET_NULL, blank=True), + keep_default=False) + + # Deleting field 'Result.preset' + db.delete_column('timeside_results', 'preset_id') + + + # Changing field 'Result.hdf5' + db.alter_column('timeside_results', 'hdf5', self.gf('django.db.models.fields.files.FileField')(max_length=1024, null=True)) + + # Changing field 'Result.file' + db.alter_column('timeside_results', 'file', self.gf('django.db.models.fields.files.FileField')(max_length=1024, null=True)) + # Adding field 'Experience.is_preset' + db.add_column('timeside_experiences', 'is_preset', + self.gf('django.db.models.fields.BooleanField')(default=False), + keep_default=False) + + # Deleting field 'Experience.is_public' + db.delete_column('timeside_experiences', 'is_public') + + # Adding M2M table for field processors on 'Experience' + m2m_table_name = db.shorten_name('timeside_experiences_processors') + db.create_table(m2m_table_name, ( + ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), + ('experience', models.ForeignKey(orm['timeside.experience'], null=False)), + ('processor', models.ForeignKey(orm['timeside.processor'], null=False)) + )) + db.create_unique(m2m_table_name, ['experience_id', 'processor_id']) + + # Removing M2M table for field presets on 'Experience' + db.delete_table(db.shorten_name('timeside_experiences_presets')) + + + models = { + 'auth.group': { + 'Meta': {'object_name': 'Group'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) + }, + 'auth.permission': { + 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) + }, + 'auth.user': { + 'Meta': {'object_name': 'User'}, + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) + }, + 'contenttypes.contenttype': { + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) + }, + 'timeside.experience': { + 'Meta': {'object_name': 'Experience', 'db_table': "'timeside_experiences'"}, + 'author': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'experiences'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), + 'date_added': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'date_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'null': 'True', 'blank': 'True'}), + 'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'experiences': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'other_experiences'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['timeside.Experience']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_public': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'presets': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'experiences'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['timeside.Preset']"}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '512', 'blank': 'True'}), + 'uuid': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512', 'blank': 'True'}) + }, + 'timeside.item': { + 'Meta': {'ordering': "['title']", 'object_name': 'Item', 'db_table': "'timeside_items'"}, + 'author': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'items'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), + 'date_added': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'date_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'null': 'True', 'blank': 'True'}), + 'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'file': ('django.db.models.fields.files.FileField', [], {'max_length': '1024', 'blank': 'True'}), + 'hdf5': ('django.db.models.fields.files.FileField', [], {'max_length': '1024', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'lock': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'mime_type': ('django.db.models.fields.CharField', [], {'max_length': '256', 'blank': 'True'}), + 'sha1': ('django.db.models.fields.CharField', [], {'max_length': '512', 'blank': 'True'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '512', 'blank': 'True'}), + 'url': ('django.db.models.fields.URLField', [], {'max_length': '1024', 'blank': 'True'}), + 'uuid': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512', 'blank': 'True'}) + }, + 'timeside.preset': { + 'Meta': {'object_name': 'Preset', 'db_table': "'timeside_presets'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_public': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'parameters': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'processor': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'preset'", 'null': 'True', 'to': "orm['timeside.Processor']"}) + }, + 'timeside.processor': { + 'Meta': {'object_name': 'Processor', 'db_table': "'timeside_processors'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'pid': ('django.db.models.fields.CharField', [], {'max_length': '256'}), + 'version': ('django.db.models.fields.CharField', [], {'max_length': '64', 'blank': 'True'}) + }, + 'timeside.result': { + 'Meta': {'object_name': 'Result', 'db_table': "'timeside_results'"}, + 'date_added': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'date_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'null': 'True', 'blank': 'True'}), + 'file': ('django.db.models.fields.files.FileField', [], {'max_length': '1024', 'blank': 'True'}), + 'hdf5': ('django.db.models.fields.files.FileField', [], {'max_length': '1024', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'item': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'results'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['timeside.Item']"}), + 'mime_type': ('django.db.models.fields.CharField', [], {'max_length': '256', 'blank': 'True'}), + 'preset': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'results'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['timeside.Preset']"}), + 'status': ('django.db.models.fields.IntegerField', [], {'default': '1'}), + 'uuid': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512', 'blank': 'True'}) + }, + 'timeside.selection': { + 'Meta': {'object_name': 'Selection', 'db_table': "'timeside_selections'"}, + 'author': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'selections'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), + 'date_added': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'date_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'null': 'True', 'blank': 'True'}), + 'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'items': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'selections'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['timeside.Item']"}), + 'selections': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'other_selections'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['timeside.Selection']"}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '512', 'blank': 'True'}), + 'uuid': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512', 'blank': 'True'}) + }, + 'timeside.task': { + 'Meta': {'object_name': 'Task', 'db_table': "'timeside_tasks'"}, + 'author': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'tasks'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['auth.User']"}), + 'experience': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'task'", 'null': 'True', 'to': "orm['timeside.Experience']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'selection': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'task'", 'null': 'True', 'to': "orm['timeside.Selection']"}), + 'status': ('django.db.models.fields.IntegerField', [], {'default': '1'}) + } + } + + complete_apps = ['timeside'] \ No newline at end of file diff --git a/timeside/models.py b/timeside/models.py index 0210ddf..67052b4 100644 --- a/timeside/models.py +++ b/timeside/models.py @@ -109,15 +109,16 @@ class Item(DocBaseResource): class Experience(DocBaseResource): - processors = models.ManyToManyField('Processor', related_name="experiences", verbose_name=_('processors'), blank=True, null=True) + presets = models.ManyToManyField('Preset', related_name="experiences", verbose_name=_('presets'), blank=True, null=True) author = models.ForeignKey(User, related_name="experiences", verbose_name=_('author'), blank=True, null=True, on_delete=models.SET_NULL) experiences = models.ManyToManyField('Experience', related_name="other_experiences", verbose_name=_('other experiences'), blank=True, null=True) - is_preset = models.BooleanField(default=False) + is_public = models.BooleanField(default=False) class Meta(MetaCore): db_table = app + '_experiences' verbose_name = _('Experience') + class Processor(models.Model): @@ -137,10 +138,25 @@ class Processor(models.Model): super(Processor, self).save(**kwargs) +class Preset(models.Model): + + processor = models.ForeignKey('Processor', related_name="preset", verbose_name=_('processor'), blank=True, null=True) + parameters = models.TextField(_('Parameters'), blank=True) + is_public = models.BooleanField(default=False) + + class Meta: + db_table = app + '_presets' + verbose_name = _('Preset') + verbose_name_plural = _('Presets') + + def __unicode__(self): + return '_'.join([unicode(self.processor), str(self.id)]) + + class Result(BaseResource): item = models.ForeignKey('Item', related_name="results", verbose_name=_('item'), blank=True, null=True, on_delete=models.SET_NULL) - parameters = models.ForeignKey('Parameters', related_name="results", verbose_name=_('parameters'), blank=True, null=True, on_delete=models.SET_NULL) + preset = models.ForeignKey('Preset', related_name="results", verbose_name=_('preset'), blank=True, null=True, on_delete=models.SET_NULL) hdf5 = models.FileField(_('HDF5 result file'), upload_to='results/%Y/%m/%d', blank=True, max_length=1024) file = models.FileField(_('Output file'), upload_to='results/%Y/%m/%d', blank=True, max_length=1024) mime_type = models.CharField(_('Output file MIME type'), blank=True, max_length=256) @@ -159,21 +175,6 @@ class Result(BaseResource): return '_'.join([self.item.title, unicode(self.parameters.processor)]) -class Parameters(models.Model): - - processor = models.ForeignKey('Processor', related_name="parameters", verbose_name=_('processor'), blank=True, null=True) - parameters = models.TextField(_('Parameters'), blank=True) - is_preset = models.BooleanField(default=False) - - class Meta: - db_table = app + '_parameters' - verbose_name = _('Parameters') - verbose_name_plural = _('Parameters') - - def __unicode__(self): - return '_'.join([unicode(self.processor), str(self.id)]) - - class Task(models.Model): experience = models.ForeignKey('Experience', related_name="task", verbose_name=_('experience'), blank=True, null=True) @@ -204,13 +205,16 @@ class Task(models.Model): path = results_root + os.sep + item.uuid + os.sep if not os.path.exists(settings.MEDIA_ROOT + os.sep + path): os.makedirs(settings.MEDIA_ROOT + os.sep + path) + + # pipe = timeside.decoder.FileDecoder(item.file.path, sha1=item.sha1) pipe = timeside.decoder.FileDecoder(item.file.path) + proc_dict = {} - for processor in self.experience.processors.all(): - proc = get_processor(processor.pid) - #TODO: add parameters - proc_dict[processor] = proc + for preset in self.experience.presets.all(): + proc = get_processor(preset.processor.pid) + proc_dict[preset.processor] = proc + #proc.set_parameters(preset.parameters) pipe = pipe | proc # while item.lock: @@ -220,30 +224,29 @@ class Task(models.Model): item.hdf5 = path + item.uuid + '.hdf5' item.save() - item.lock_setter(True) pipe.run() + item.lock_setter(True) pipe.results.to_hdf5(item.hdf5.path) item.lock_setter(False) for processor in proc_dict.keys(): proc = proc_dict[processor] - if proc.type == 'analyzer': - for analyzer_id in proc.results.keys(): - parameters = proc.results[analyzer_id].parameters - parameters, c = Parameters.objects.get_or_create(processor=processor, parameters=unicode(parameters)) - result, c = Result.objects.get_or_create(parameters=parameters, item=item) + for processor_id in proc.results.keys(): + parameters = proc.results[processor_id].parameters + preset, c = Preset.objects.get_or_create(processor=processor, parameters=unicode(parameters)) + result, c = Result.objects.get_or_create(preset=preset, item=item) + + if proc.type == 'analyzer': result.hdf5 = path + item.uuid + '_' + str(proc.UUID) + '.hdf5' proc.results.to_hdf5(result.hdf5.path) - result.save() - - if proc.type == 'grapher': - parameters, c = Parameters.objects.get_or_create(processor=processor, parameters=unicode(parameters)) - result, c = Result.objects.get_or_create(parameters=parameters, item=item) - result.output= path + item.uuid + '_' + str(proc.UUID) + '.png' - proc.render(output=result.output) + + if proc.type == 'grapher': + result.file = path + item.uuid + '_' + str(proc.UUID) + '.png' + proc.render(output=result.file) + result.save() - + # except: # self.status_setter(0) # item.lock_setter(False) @@ -254,7 +257,6 @@ class Task(models.Model): del pipe - post_save.connect(set_mimetype, sender=Item) post_save.connect(set_hash, sender=Item) post_save.connect(set_mimetype, sender=Result) diff --git a/timeside/serializers.py b/timeside/serializers.py index 94e451b..a1447d1 100644 --- a/timeside/serializers.py +++ b/timeside/serializers.py @@ -8,7 +8,7 @@ class SelectionSerializer(serializers.ModelSerializer): class Meta: model = Selection - fields = ('id', 'items', 'author') + fields = ('id', 'items', 'selections', 'author') class ItemSerializer(serializers.ModelSerializer): @@ -22,7 +22,7 @@ class ExperienceSerializer(serializers.ModelSerializer): class Meta: model = Experience - fields = ('id', 'processors', 'is_preset', 'author') + fields = ('id', 'presets', 'experiences', 'is_public', 'author') class ProcessorSerializer(serializers.ModelSerializer): @@ -36,14 +36,14 @@ class ResultSerializer(serializers.ModelSerializer): class Meta: model = Result - fields = ('id', 'item', 'parameters', 'status') + fields = ('id', 'item', 'preset', 'status', 'hdf5', 'file') -class ParametersSerializer(serializers.ModelSerializer): +class PresetSerializer(serializers.ModelSerializer): class Meta: - model = Parameters - fields = ('id', 'processor', 'parameters', 'is_preset') + model = Preset + fields = ('id', 'processor', 'parameters', 'is_public') class TaskSerializer(serializers.ModelSerializer): diff --git a/timeside/urls.py b/timeside/urls.py index ee508e4..6fde09f 100644 --- a/timeside/urls.py +++ b/timeside/urls.py @@ -13,7 +13,7 @@ api_router.register(r'items', views.ItemViewSet) api_router.register(r'experiences', views.ExperienceViewSet) api_router.register(r'processors', views.ProcessorViewSet) api_router.register(r'results', views.ResultViewSet) -api_router.register(r'parameters', views.ParametersViewSet) +api_router.register(r'presets', views.PresetViewSet) api_router.register(r'tasks', views.TaskViewSet) api_router.register(r'users', views.UserViewSet) diff --git a/timeside/views.py b/timeside/views.py index 7acafe0..8dd8019 100644 --- a/timeside/views.py +++ b/timeside/views.py @@ -38,10 +38,10 @@ class ResultViewSet(viewsets.ModelViewSet): serializer_class = ResultSerializer -class ParametersViewSet(viewsets.ModelViewSet): +class PresetViewSet(viewsets.ModelViewSet): - model = Parameters - serializer_class = ParametersSerializer + model = Preset + serializer_class = PresetSerializer class TaskViewSet(viewsets.ModelViewSet): @@ -81,14 +81,14 @@ class IndexView(ListView): return super(IndexView, self).dispatch(*args, **kwargs) -class ItemAnalyzerView(DetailView): +class ResultAnalyzerView(DetailView): - model = Item + model = Result def results(self): - item = self.get_object() + result = self.get_object() results = AnalyzerResult() - return results.from_hdf5(self.hdf5).to_json() + return results.from_hdf5(result.hdf5).to_json() def get_context_data(self, **kwargs): context = super(ItemJsonAnalyzerView, self).get_context_data(**kwargs)