rename CidUserAnswer to UserAnswer
This commit is contained in:
+2
-2
@@ -4,7 +4,7 @@ from .models import (
|
||||
#Examination,
|
||||
QuestionType,
|
||||
Answer,
|
||||
CidUserAnswer,
|
||||
UserAnswer,
|
||||
Exam,
|
||||
Modality,
|
||||
Region,
|
||||
@@ -54,7 +54,7 @@ class ExamAdmin(VersionAdmin, admin.ModelAdmin):
|
||||
admin.site.register(AnatomyQuestion, AnatomyAdmin)
|
||||
#admin.site.register(Examination)
|
||||
admin.site.register(QuestionType)
|
||||
admin.site.register(CidUserAnswer)
|
||||
admin.site.register(UserAnswer)
|
||||
admin.site.register(Exam, ExamAdmin)
|
||||
admin.site.register(Modality)
|
||||
admin.site.register(Region)
|
||||
|
||||
+5
-5
@@ -1,8 +1,8 @@
|
||||
import django_filters
|
||||
|
||||
from .models import AnatomyQuestion, CidUserAnswer, Exam
|
||||
from .models import AnatomyQuestion, UserAnswer, Exam
|
||||
|
||||
#from generic.filters import CidUserAnswerFilter
|
||||
#from generic.filters import UserAnswerFilter
|
||||
from django.contrib.auth.models import User
|
||||
|
||||
|
||||
@@ -46,9 +46,9 @@ class AnatomyQuestionFilter(django_filters.FilterSet):
|
||||
super(AnatomyQuestionFilter, self).__init__(data=data, queryset=queryset, prefix=prefix, request=request)
|
||||
pass
|
||||
|
||||
class AnatomyCidUserAnswerFilter(django_filters.FilterSet):
|
||||
class AnatomyUserAnswerFilter(django_filters.FilterSet):
|
||||
class Meta:
|
||||
model= CidUserAnswer
|
||||
model= UserAnswer
|
||||
fields = (
|
||||
"cid",
|
||||
"user",
|
||||
@@ -63,5 +63,5 @@ class AnatomyCidUserAnswerFilter(django_filters.FilterSet):
|
||||
def __init__(self, data=None, queryset=None, prefix=None, strict=None, user=None, request=None):
|
||||
if not request.user.groups.filter(name="anatomy_checker").exists():
|
||||
queryset = queryset.filter(open_access=True) | queryset.filter(author__id=request.user.id)
|
||||
super(AnatomyCidUserAnswerFilter, self).__init__(data=data, queryset=queryset, prefix=prefix, request=request)
|
||||
super(AnatomyUserAnswerFilter, self).__init__(data=data, queryset=queryset, prefix=prefix, request=request)
|
||||
pass
|
||||
+2
-2
@@ -12,7 +12,7 @@ from generic.forms import ExamAuthorFormMixin, ExamFormMixin
|
||||
|
||||
from .models import (
|
||||
Answer,
|
||||
CidUserAnswer,
|
||||
UserAnswer,
|
||||
AnatomyQuestion,
|
||||
# Examination,
|
||||
BodyPart,
|
||||
@@ -32,7 +32,7 @@ from dal import autocomplete
|
||||
|
||||
class AnatomyAnswerForm(ModelForm):
|
||||
class Meta:
|
||||
model = CidUserAnswer
|
||||
model = UserAnswer
|
||||
fields = ("answer",)
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# Generated by Django 4.1.4 on 2023-05-15 10:14
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('anatomy', '0068_alter_ciduseranswer_options'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameModel(
|
||||
old_name='CidUserAnswer',
|
||||
new_name='UserAnswer',
|
||||
),
|
||||
]
|
||||
+3
-3
@@ -16,7 +16,7 @@ from sortedm2m.fields import SortedManyToManyField
|
||||
|
||||
import string
|
||||
|
||||
from generic.models import CidUser, CidUserGroup, ExamUserStatus, Examination, ExamBase, QuestionNote, CidUserAnswerBase, UserUserGroup
|
||||
from generic.models import CidUser, CidUserGroup, ExamUserStatus, Examination, ExamBase, QuestionNote, UserAnswerBase, UserUserGroup
|
||||
|
||||
from collections import defaultdict
|
||||
from helpers.images import image_as_base64
|
||||
@@ -467,7 +467,7 @@ class Exam(ExamBase):
|
||||
|
||||
|
||||
@reversion.register
|
||||
class CidUserAnswer(CidUserAnswerBase):
|
||||
class UserAnswer(UserAnswerBase):
|
||||
"""User answers by candidate"""
|
||||
|
||||
question = models.ForeignKey(
|
||||
@@ -504,7 +504,7 @@ class CidUserAnswer(CidUserAnswerBase):
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
self.clean()
|
||||
return super(CidUserAnswer, self).save(*args, **kwargs)
|
||||
return super(UserAnswer, self).save(*args, **kwargs)
|
||||
|
||||
def clean(self):
|
||||
if self.answer:
|
||||
|
||||
+4
-4
@@ -1,7 +1,7 @@
|
||||
import django_tables2 as tables
|
||||
from django_tables2.utils import A
|
||||
|
||||
from .models import AnatomyQuestion, CidUserAnswer
|
||||
from .models import AnatomyQuestion, UserAnswer
|
||||
|
||||
from django.utils.html import format_html
|
||||
|
||||
@@ -9,7 +9,7 @@ from easy_thumbnails.files import get_thumbnailer
|
||||
|
||||
from easy_thumbnails.exceptions import InvalidImageFormatError
|
||||
|
||||
#from generic.tables import CidUserAnswerTable
|
||||
#from generic.tables import UserAnswerTable
|
||||
|
||||
|
||||
class ImageColumn(tables.Column):
|
||||
@@ -64,7 +64,7 @@ class AnatomyQuestionTable(tables.Table):
|
||||
*args,
|
||||
**kwargs,
|
||||
)
|
||||
class AnatomyCidUserAnswerTable(tables.Table):
|
||||
class AnatomyUserAnswerTable(tables.Table):
|
||||
select = tables.CheckBoxColumn(accessor=("pk"))
|
||||
delete = tables.LinkColumn(
|
||||
"anatomy:user_answer_delete", text="Delete", args=[A("pk")], orderable=False
|
||||
@@ -74,7 +74,7 @@ class AnatomyCidUserAnswerTable(tables.Table):
|
||||
args=[A('pk')],
|
||||
orderable=False)
|
||||
class Meta:
|
||||
model = CidUserAnswer
|
||||
model = UserAnswer
|
||||
template_name = "django_tables2/bootstrap4.html"
|
||||
fields = (
|
||||
"cid",
|
||||
|
||||
+3
-3
@@ -73,15 +73,15 @@ urlpatterns = [
|
||||
),
|
||||
path(
|
||||
"user_answers/",
|
||||
views.CidUserAnswerTableView.as_view(),
|
||||
views.UserAnswerTableView.as_view(),
|
||||
name="user_answer_table_view",
|
||||
),
|
||||
path(
|
||||
"user_answers/<int:pk>", views.CidUserAnswerView.as_view(), name="user_answer_view"
|
||||
"user_answers/<int:pk>", views.UserAnswerView.as_view(), name="user_answer_view"
|
||||
),
|
||||
path(
|
||||
"user_answers/<int:pk>/delete",
|
||||
views.CidUserAnswerDelete.as_view(),
|
||||
views.UserAnswerDelete.as_view(),
|
||||
name="user_answer_delete",
|
||||
),
|
||||
path(
|
||||
|
||||
+19
-19
@@ -41,7 +41,7 @@ from .forms import (
|
||||
from .models import (
|
||||
AnatomyQuestion,
|
||||
BodyPart,
|
||||
CidUserAnswer,
|
||||
UserAnswer,
|
||||
# Examination,
|
||||
Structure,
|
||||
Exam,
|
||||
@@ -55,8 +55,8 @@ from reversion.views import RevisionMixin
|
||||
|
||||
from .decorators import user_is_author_or_anatomy_checker
|
||||
|
||||
from .tables import AnatomyQuestionTable, AnatomyCidUserAnswerTable
|
||||
from .filters import AnatomyQuestionFilter, AnatomyCidUserAnswerFilter
|
||||
from .tables import AnatomyQuestionTable, AnatomyUserAnswerTable
|
||||
from .filters import AnatomyQuestionFilter, AnatomyUserAnswerFilter
|
||||
|
||||
from django_tables2 import SingleTableView, SingleTableMixin
|
||||
from django_filters.views import FilterView
|
||||
@@ -161,12 +161,12 @@ def answer_question(request, pk):
|
||||
# }
|
||||
#
|
||||
# # Get data for flagged
|
||||
# # answered_questions = CidUserAnswer.objects.filter(user=request.user).values_list("question__pk", flat=True)
|
||||
# user_answer_data = CidUserAnswer.objects.filter(user=request.user).values_list(
|
||||
# # answered_questions = UserAnswer.objects.filter(user=request.user).values_list("question__pk", flat=True)
|
||||
# user_answer_data = UserAnswer.objects.filter(user=request.user).values_list(
|
||||
# "question__pk", "answer", "flagged"
|
||||
# )
|
||||
# # flagged_questions = CidUserAnswer.objects.filter(user=request.user, flagged=True).values_list("question__pk", flat=True)
|
||||
# # flagged_questions I= CidUserAnswer.filter(user=request.user, ).values_list("question__pk", flat=True)
|
||||
# # flagged_questions = UserAnswer.objects.filter(user=request.user, flagged=True).values_list("question__pk", flat=True)
|
||||
# # flagged_questions I= UserAnswer.filter(user=request.user, ).values_list("question__pk", flat=True)
|
||||
#
|
||||
# answered_questions = set()
|
||||
# flagged_questions = set()
|
||||
@@ -215,7 +215,7 @@ def answer_question(request, pk):
|
||||
|
||||
# def flag_question(request):
|
||||
# pk = request.GET.get("pk", None)
|
||||
# ans = CidUserAnswer.objects.filter(user=request.user, question__pk=pk).first()
|
||||
# ans = UserAnswer.objects.filter(user=request.user, question__pk=pk).first()
|
||||
# ans.flagged = not ans.flagged
|
||||
# ans.save()
|
||||
# data = {"flagged": ans.flagged}
|
||||
@@ -384,7 +384,7 @@ def exam_scores_refresh(request, pk):
|
||||
|
||||
questions = exam.exam_questions.all()
|
||||
|
||||
cids = CidUserAnswer.objects.filter(question__in=questions, exam__id=pk)
|
||||
cids = UserAnswer.objects.filter(question__in=questions, exam__id=pk)
|
||||
|
||||
# Force a score update
|
||||
for c in cids:
|
||||
@@ -733,24 +733,24 @@ def question_save_annotation(request, pk):
|
||||
|
||||
|
||||
GenericExamViews = ExamViews(
|
||||
Exam, AnatomyQuestion, Answer, CidUserAnswer, "anatomy", "anatomy"
|
||||
Exam, AnatomyQuestion, Answer, UserAnswer, "anatomy", "anatomy"
|
||||
)
|
||||
|
||||
|
||||
class CidUserAnswerView(SuperuserRequiredMixin, DetailView):
|
||||
model = CidUserAnswer
|
||||
class UserAnswerView(SuperuserRequiredMixin, DetailView):
|
||||
model = UserAnswer
|
||||
|
||||
|
||||
class CidUserAnswerTableView(SuperuserRequiredMixin, SingleTableMixin, FilterView):
|
||||
model = CidUserAnswer
|
||||
table_class = AnatomyCidUserAnswerTable
|
||||
class UserAnswerTableView(SuperuserRequiredMixin, SingleTableMixin, FilterView):
|
||||
model = UserAnswer
|
||||
table_class = AnatomyUserAnswerTable
|
||||
template_name = "anatomy/user_answer_question_view.html"
|
||||
|
||||
filterset_class = AnatomyCidUserAnswerFilter
|
||||
filterset_class = AnatomyUserAnswerFilter
|
||||
|
||||
|
||||
class CidUserAnswerDelete(SuperuserRequiredMixin, DeleteView):
|
||||
model = CidUserAnswer
|
||||
class UserAnswerDelete(SuperuserRequiredMixin, DeleteView):
|
||||
model = UserAnswer
|
||||
template_name = "user_answer_delete.html"
|
||||
success_url = reverse_lazy("anatomy:user_answer_table_view")
|
||||
|
||||
@@ -797,7 +797,7 @@ class ExamAuthorUpdate(RevisionMixin, LoginRequiredMixin, AuthorRequiredMixin, U
|
||||
|
||||
|
||||
|
||||
GenericViews = GenericViewBase("anatomy", AnatomyQuestion, CidUserAnswer, Exam)
|
||||
GenericViews = GenericViewBase("anatomy", AnatomyQuestion, UserAnswer, Exam)
|
||||
|
||||
|
||||
class ExamClone(ExamCloneMixin, ExamCreate):
|
||||
|
||||
Reference in New Issue
Block a user