From 696ffc6d8bf396a12a6a2db6df8ba99a729a08db Mon Sep 17 00:00:00 2001 From: Ross Date: Thu, 25 Feb 2021 18:16:45 +0000 Subject: [PATCH] . --- generic/admin.py | 5 +++-- generic/migrations/0009_contrast.py | 23 ++++++++++++++++++++ generic/models.py | 9 ++++++++ longs/migrations/0028_longseries_contrast.py | 20 +++++++++++++++++ longs/models.py | 9 +++++++- 5 files changed, 63 insertions(+), 3 deletions(-) create mode 100644 generic/migrations/0009_contrast.py create mode 100644 longs/migrations/0028_longseries_contrast.py diff --git a/generic/admin.py b/generic/admin.py index e8f43b4b..937b66a6 100644 --- a/generic/admin.py +++ b/generic/admin.py @@ -2,11 +2,12 @@ from longs.models import Exam from django.contrib import admin # Register your models here. -from .models import Examination, Sign, Condition, Plane +from .models import Examination, Sign, Condition, Plane, Contrast #from .models import Examination, Sign, Site, Condition admin.site.register(Examination) admin.site.register(Sign) #admin.site.register(Site) admin.site.register(Condition) -admin.site.register(Plane) \ No newline at end of file +admin.site.register(Plane) +admin.site.register(Contrast) \ No newline at end of file diff --git a/generic/migrations/0009_contrast.py b/generic/migrations/0009_contrast.py new file mode 100644 index 00000000..1d7aa61e --- /dev/null +++ b/generic/migrations/0009_contrast.py @@ -0,0 +1,23 @@ +# Generated by Django 3.1.3 on 2021-02-25 18:16 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('generic', '0008_plane'), + ] + + operations = [ + migrations.CreateModel( + name='Contrast', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('contrast', models.CharField(max_length=200)), + ], + options={ + 'ordering': ('contrast',), + }, + ), + ] diff --git a/generic/models.py b/generic/models.py index d129e327..b812654c 100644 --- a/generic/models.py +++ b/generic/models.py @@ -16,6 +16,15 @@ class Plane(models.Model): class Meta: ordering = ('plane', ) +class Contrast(models.Model): + contrast = models.CharField(max_length=200) + + def __str__(self): + return self.contrast + + class Meta: + ordering = ('contrast', ) + class Examination(models.Model): examination = models.CharField(max_length=200) diff --git a/longs/migrations/0028_longseries_contrast.py b/longs/migrations/0028_longseries_contrast.py new file mode 100644 index 00000000..6f781ab4 --- /dev/null +++ b/longs/migrations/0028_longseries_contrast.py @@ -0,0 +1,20 @@ +# Generated by Django 3.1.3 on 2021-02-25 18:16 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('generic', '0009_contrast'), + ('longs', '0027_longseries_plane'), + ] + + operations = [ + migrations.AddField( + model_name='longseries', + name='contrast', + field=models.ForeignKey(help_text='MRI / CT contrast', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='series_contrast', to='generic.contrast'), + ), + ] diff --git a/longs/models.py b/longs/models.py index 0e090f9b..0f201765 100644 --- a/longs/models.py +++ b/longs/models.py @@ -25,7 +25,7 @@ from helpers.images import image_as_base64 from anatomy.models import Modality -from generic.models import Examination, Condition, Sign, ExamBase, Plane +from generic.models import Examination, Condition, Sign, ExamBase, Plane, Contrast # from generic.models import Examination, Site, Condition, Sign @@ -194,6 +194,13 @@ class LongSeries(models.Model): on_delete=models.SET_NULL, null=True, ) + contrast = models.ForeignKey( + Contrast, + help_text="MRI / CT contrast", + related_name="series_contrast", + on_delete=models.SET_NULL, + null=True, + ) long = models.ManyToManyField( "Long", help_text="The question(s) this series should be associated with",