from django.db import models from django.utils.translation import gettext_lazy as _ from university.db.fields import JSONField class Question(models.Model): TYPE_SINGLE_CHOICE = 0 TYPE_MUTI_CHOICE = 1 TYPE_TRUE_FALSE = 2 question_type = models.SmallIntegerField( choices=( (TYPE_SINGLE_CHOICE, _('single choice')), (TYPE_MUTI_CHOICE, _('muti choice')), (TYPE_TRUE_FALSE, _('true or false')) ), default=TYPE_SINGLE_CHOICE) problem = models.TextField() options = JSONField(default=[]) hint = models.TextField() answer = models.CharField(max_length=32) class Meta: db_table = 'questions' def __str__(self): return self.problem