From d8167aa95f5cfa018241e7b1e28f7fa8b662f521 Mon Sep 17 00:00:00 2001 From: Ross Date: Fri, 5 Feb 2021 11:10:59 +0000 Subject: [PATCH] . --- anatomy/admin.py | 6 ++-- anatomy/filters.py | 4 ++- anatomy/forms.py | 3 +- anatomy/migrations/0025_auto_20210205_1106.py | 23 +++++++++++++ ...0026_remove_anatomyquestion_examination.py | 17 ++++++++++ .../0027_anatomyquestion_examination.py | 20 +++++++++++ anatomy/models.py | 9 ++--- anatomy/views.py | 3 +- longs/models.py | 1 - rapids/migrations/0010_auto_20210205_1051.py | 19 +++++++++++ rapids/migrations/0011_auto_20210205_1056.py | 33 +++++++++++++++++++ rapids/migrations/0013_auto_20210205_1042.py | 21 ------------ rapids/models.py | 27 +++++---------- 13 files changed, 134 insertions(+), 52 deletions(-) create mode 100644 anatomy/migrations/0025_auto_20210205_1106.py create mode 100644 anatomy/migrations/0026_remove_anatomyquestion_examination.py create mode 100644 anatomy/migrations/0027_anatomyquestion_examination.py create mode 100644 rapids/migrations/0010_auto_20210205_1051.py create mode 100644 rapids/migrations/0011_auto_20210205_1056.py delete mode 100644 rapids/migrations/0013_auto_20210205_1042.py diff --git a/anatomy/admin.py b/anatomy/admin.py index b053714b..ad9307bb 100644 --- a/anatomy/admin.py +++ b/anatomy/admin.py @@ -1,7 +1,7 @@ from django.contrib import admin from .models import ( AnatomyQuestion, - Examination, + #Examination, QuestionType, Answer, CidUserAnswer, @@ -12,6 +12,8 @@ from .models import ( Structure, ) +from generic.models import Examination + from reversion.admin import VersionAdmin # Register your models here. @@ -47,7 +49,7 @@ class AnatomyAdmin(VersionAdmin): admin.site.register(AnatomyQuestion, AnatomyAdmin) -admin.site.register(Examination) +#admin.site.register(Examination) admin.site.register(QuestionType) admin.site.register(CidUserAnswer) admin.site.register(Exam) diff --git a/anatomy/filters.py b/anatomy/filters.py index 92abd14f..8358550f 100644 --- a/anatomy/filters.py +++ b/anatomy/filters.py @@ -6,5 +6,7 @@ from .models import AnatomyQuestion class AnatomyQuestionFilter(django_filters.FilterSet): class Meta: model = AnatomyQuestion - fields = ("question_type", "exams", "examination", "modality", "region", + fields = ("question_type", "exams", + "examination", + "modality", "region", "body_part", "created_date", "open_access", "author") diff --git a/anatomy/forms.py b/anatomy/forms.py index 35672a64..4431ca69 100644 --- a/anatomy/forms.py +++ b/anatomy/forms.py @@ -12,7 +12,7 @@ from .models import ( Answer, CidUserAnswer, AnatomyQuestion, - Examination, + #Examination, BodyPart, Structure, Region, @@ -20,6 +20,7 @@ from .models import ( QuestionType, Exam, ) +from generic.models import Examination from django.contrib.admin.widgets import FilteredSelectMultiple from django.forms.widgets import RadioSelect, TextInput, Textarea diff --git a/anatomy/migrations/0025_auto_20210205_1106.py b/anatomy/migrations/0025_auto_20210205_1106.py new file mode 100644 index 00000000..7a2938d7 --- /dev/null +++ b/anatomy/migrations/0025_auto_20210205_1106.py @@ -0,0 +1,23 @@ +# Generated by Django 3.1.3 on 2021-02-05 11:06 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('generic', '0007_site'), + ('anatomy', '0024_auto_20210130_1515'), + ] + + operations = [ + migrations.AlterField( + model_name='anatomyquestion', + name='examination', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='generic.examination'), + ), + migrations.DeleteModel( + name='Examination', + ), + ] diff --git a/anatomy/migrations/0026_remove_anatomyquestion_examination.py b/anatomy/migrations/0026_remove_anatomyquestion_examination.py new file mode 100644 index 00000000..ea34f342 --- /dev/null +++ b/anatomy/migrations/0026_remove_anatomyquestion_examination.py @@ -0,0 +1,17 @@ +# Generated by Django 3.1.3 on 2021-02-05 11:09 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('anatomy', '0025_auto_20210205_1106'), + ] + + operations = [ + migrations.RemoveField( + model_name='anatomyquestion', + name='examination', + ), + ] diff --git a/anatomy/migrations/0027_anatomyquestion_examination.py b/anatomy/migrations/0027_anatomyquestion_examination.py new file mode 100644 index 00000000..c22e157c --- /dev/null +++ b/anatomy/migrations/0027_anatomyquestion_examination.py @@ -0,0 +1,20 @@ +# Generated by Django 3.1.3 on 2021-02-05 11:10 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('generic', '0007_site'), + ('anatomy', '0026_remove_anatomyquestion_examination'), + ] + + operations = [ + migrations.AddField( + model_name='anatomyquestion', + name='examination', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='generic.examination'), + ), + ] diff --git a/anatomy/models.py b/anatomy/models.py index 3dd13c60..1b45daca 100644 --- a/anatomy/models.py +++ b/anatomy/models.py @@ -13,6 +13,8 @@ from sortedm2m.fields import SortedManyToManyField import string +from generic.models import Examination + image_storage = FileSystemStorage( # Physical file location ROOT location=u"{0}/anatomy/".format(settings.MEDIA_ROOT), @@ -26,13 +28,6 @@ def image_directory_path(instance, filename): return u"picture/{0}".format(filename) -class Examination(models.Model): - examination = models.CharField(max_length=200) - - def __str__(self): - return self.examination - - class BodyPart(models.Model): bodypart = models.CharField(max_length=200) diff --git a/anatomy/views.py b/anatomy/views.py index b6f9ce9b..777bf48a 100644 --- a/anatomy/views.py +++ b/anatomy/views.py @@ -36,13 +36,14 @@ from .models import ( AnatomyQuestion, BodyPart, CidUserAnswer, - Examination, + #Examination, Structure, Exam, Answer, # HalfMarkAnswers, # IncorrectAnswers, ) +from generic.models import Examination from .tables import AnatomyQuestionTable from .filters import AnatomyQuestionFilter diff --git a/longs/models.py b/longs/models.py index 88a2ce8d..5b968ddb 100644 --- a/longs/models.py +++ b/longs/models.py @@ -50,7 +50,6 @@ class Long(models.Model): "Associated condition. Will allow searching / filtering and tips / hints to be displayed. Conditions with spaces must be enclosed in quotes \"...\"" ) - #sign = models.CharField(max_length=255, blank=True) sign = tagulous.models.TagField( to=Sign, blank=True, help_text='Radiological signs in the question') diff --git a/rapids/migrations/0010_auto_20210205_1051.py b/rapids/migrations/0010_auto_20210205_1051.py new file mode 100644 index 00000000..ffc34cdb --- /dev/null +++ b/rapids/migrations/0010_auto_20210205_1051.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.3 on 2021-02-05 10:51 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('rapids', '0009_auto_20210205_1046'), + ] + + operations = [ + migrations.DeleteModel( + name='Condition', + ), + migrations.DeleteModel( + name='Sign', + ), + ] diff --git a/rapids/migrations/0011_auto_20210205_1056.py b/rapids/migrations/0011_auto_20210205_1056.py new file mode 100644 index 00000000..94965c59 --- /dev/null +++ b/rapids/migrations/0011_auto_20210205_1056.py @@ -0,0 +1,33 @@ +# Generated by Django 3.1.3 on 2021-02-05 10:56 + +from django.db import migrations +import tagulous.models.fields + + +class Migration(migrations.Migration): + + dependencies = [ + ('generic', '0007_site'), + ('rapids', '0010_auto_20210205_1051'), + ] + + operations = [ + migrations.RemoveField( + model_name='rapid', + name='condition', + ), + migrations.AddField( + model_name='rapid', + name='condition', + field=tagulous.models.fields.TagField(_set_tag_meta=True, blank=True, help_text='Associated condition. Will allow searching / filtering and tips / hints to be displayed. Conditions with spaces must be enclosed in quotes "..."', to='generic.Condition'), + ), + migrations.RemoveField( + model_name='rapid', + name='sign', + ), + migrations.AddField( + model_name='rapid', + name='sign', + field=tagulous.models.fields.TagField(_set_tag_meta=True, blank=True, help_text='Radiological signs in the question', to='generic.Sign'), + ), + ] diff --git a/rapids/migrations/0013_auto_20210205_1042.py b/rapids/migrations/0013_auto_20210205_1042.py deleted file mode 100644 index 48d2f653..00000000 --- a/rapids/migrations/0013_auto_20210205_1042.py +++ /dev/null @@ -1,21 +0,0 @@ -# Generated by Django 3.1.3 on 2021-02-05 10:42 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('rapids', '0012_auto_20210205_1040'), - ] - - operations = [ - #migrations.RemoveField( - # model_name='rapid', - # name='site', - #), - #migrations.RemoveField( - # model_name='rapidcreationdefault', - # name='site', - #), - ] diff --git a/rapids/models.py b/rapids/models.py index 8c97f123..9c080996 100644 --- a/rapids/models.py +++ b/rapids/models.py @@ -18,7 +18,7 @@ from sortedm2m.fields import SortedManyToManyField import string -from generic.models import Examination, Site, Condition, Sign +from generic.models import Site, Condition, Sign image_storage = FileSystemStorage( # Physical file location ROOT @@ -68,12 +68,6 @@ class Examination(models.Model): class Meta: ordering = ('examination', ) -class Condition(tagulous.models.TagModel): - pass - -class Sign(tagulous.models.TagModel): - pass - class Answer(models.Model): question = models.ForeignKey( "Rapid", related_name="answers", on_delete=models.CASCADE @@ -144,17 +138,14 @@ class Rapid(models.Model): choices=LATERALITY_CHOICES, default=NONE, help_text="Applies to the answer, not the examination") - condition = models.CharField(max_length=255, blank=True) - #condition = tagulous.models.TagField( - # to=Condition, - # blank=True, - # help_text= - # "Associated condition. Will allow searching / filtering and tips / hints to be displayed. Conditions with spaces must be enclosed in quotes \"...\"" - #) - - sign = models.CharField(max_length=255, blank=True) - #sign = tagulous.models.TagField( - # to=Sign, blank=True, help_text='Radiological signs in the question') + condition = tagulous.models.TagField( + to=Condition, + blank=True, + help_text= + "Associated condition. Will allow searching / filtering and tips / hints to be displayed. Conditions with spaces must be enclosed in quotes \"...\"" + ) + sign = tagulous.models.TagField( + to=Sign, blank=True, help_text='Radiological signs in the question') DEFAULT_SITE_ID = 1 #site = models.ManyToManyField(