feedback/models.py
changeset 3 abfecc652a16
parent 1 5d921672ef41
equal deleted inserted replaced
2:a28d06481350 3:abfecc652a16
     1 from django.db import models
     1 from django.db import models
     2 
     2 
     3 # Create your models here.
     3 from offline.event.models import Event
       
     4 
       
     5 TOPICS_CHOICES = (('1', 'Very relevant'),
       
     6                   ('2', 'Relevant'),
       
     7                   ('3', 'Somewhat relevant'),
       
     8                   ('4', 'Not relevant'))
       
     9 
       
    10 DEPTH_CHOICES = (('1', 'Too detailed'),
       
    11                  ('2', 'Detailed'),
       
    12                  ('3', 'Not enough detail'),
       
    13                  ('4', 'Poor detail'))
       
    14 
       
    15 METHODOLOGY_CHOICES = (('1', 'Extremely effective'),
       
    16                        ('2', 'Effective'),
       
    17                        ('3', 'Not very effective'),
       
    18                        ('4', 'Ineffective'))
       
    19 
       
    20 PACE_CHOICES = (('1', 'Too fast'),
       
    21                 ('2', 'Fast'),
       
    22                 ('3', 'Just right'),
       
    23                 ('4', 'Slow'),
       
    24                 ('5', 'Too slow'))
       
    25 
       
    26 APPLICABILITY_CHOICES = (('1', 'I can use most of it immediately'),
       
    27                          ('2', 'I can use it somewhat immediately'),
       
    28                          ('3', 'I cannot use it immediately'),
       
    29                          ('4', 'I might never use it'))
       
    30 
       
    31 PROBLEMS_CHOICES = (('1', 'Very intersting'),
       
    32                     ('2', 'Interesting'),
       
    33                     ('3', 'Somewhat interesting'),
       
    34                     ('4', 'Not interesting'))
       
    35 
       
    36 EXERCISES_CHOICES = (('1', 'Very instructive'),
       
    37                      ('2', 'Instructive'),
       
    38                      ('3', 'Somewhat instructive'),
       
    39                      ('4', 'Not instructive'))
       
    40 
       
    41 
       
    42 class Feedback(models.Model):
       
    43     """ A table to hold the feedbacks.
       
    44     """
       
    45 
       
    46     event = models.ForeignKey(Event, related_name="%(class)s")
       
    47     day = models.CharField(max_length=1, default='1')
       
    48     user_ip = models.CharField(max_length=15)
       
    49 
       
    50     topics = models.CharField(max_length=1, choices=TOPICS_CHOICES,
       
    51                               verbose_name="Range of topics covered", blank=True)
       
    52     depth = models.CharField(max_length=1, choices=DEPTH_CHOICES, 
       
    53                              verbose_name="Depth of coverage", blank=True)
       
    54     methodology = models.CharField(max_length=1, choices=METHODOLOGY_CHOICES,
       
    55                                    verbose_name="Effectiveness of methodology", blank=True)
       
    56     pace = models.CharField(max_length=1, choices=PACE_CHOICES,
       
    57                             verbose_name="Pace of coverage", blank=True)
       
    58     applicability = models.CharField(max_length=1, choices=APPLICABILITY_CHOICES, blank=True)
       
    59     problems = models.CharField(max_length=1, choices=PROBLEMS_CHOICES,
       
    60                                 verbose_name="Choice of problems", blank=True)
       
    61     exercises = models.CharField(max_length=1, choices=EXERCISES_CHOICES,
       
    62                                  verbose_name="Choice of exercises", blank=True)
       
    63     comments = models.TextField(verbose_name="General comments", blank=True)
       
    64