fnp
/
edumed.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
de60a37
)
link field type
author
Jan Szejko
<janek37@gmail.com>
Tue, 16 Jan 2018 10:12:43 +0000
(11:12 +0100)
committer
Jan Szejko
<janek37@gmail.com>
Tue, 16 Jan 2018 10:12:43 +0000
(11:12 +0100)
stage2/forms.py
patch
|
blob
|
history
stage2/models.py
patch
|
blob
|
history
diff --git
a/stage2/forms.py
b/stage2/forms.py
index
b956a23
..
ee25a03
100644
(file)
--- a/
stage2/forms.py
+++ b/
stage2/forms.py
@@
-80,8
+80,8
@@
class AssignmentFieldForm(forms.Form):
option.save()
else:
for opt in self.answer.fieldoption_set.all():
option.save()
else:
for opt in self.answer.fieldoption_set.all():
-
opt.answer = None
-
opt.save()
+ opt.answer = None
+ opt.save()
else:
self.answer.field_values[self.label] = value
self.answer.save()
else:
self.answer.field_values[self.label] = value
self.answer.save()
diff --git
a/stage2/models.py
b/stage2/models.py
index
fb50152
..
a5815fd
100644
(file)
--- a/
stage2/models.py
+++ b/
stage2/models.py
@@
-8,6
+8,7
@@
from django.core.urlresolvers import reverse
from django.db import models
from django.db.models.signals import post_save
from django.dispatch import receiver
from django.db import models
from django.db.models.signals import post_save
from django.dispatch import receiver
+from django.utils.html import format_html
from django.utils.translation import ugettext_lazy as _
from django.utils import timezone
from jsonfield import JSONField
from django.utils.translation import ugettext_lazy as _
from django.utils import timezone
from jsonfield import JSONField
@@
-110,11
+111,14
@@
class Answer(models.Model):
def fields(self):
for field_desc in self.assignment.field_descriptions:
field_name, params = field_desc
def fields(self):
for field_desc in self.assignment.field_descriptions:
field_name, params = field_desc
- if params['type'] == 'text':
- yield (field_name, self.field_values.get(field_name, ''))
- else: # options
+ if params['type'] == 'options':
option = self.fieldoption_set.filter(set__name=params['option_set'])
option = self.fieldoption_set.filter(set__name=params['option_set'])
- yield (field_name, option.get().value if option else '--------')
+ value = option.get().value if option else '--------'
+ else: # text, link
+ value = self.field_values.get(field_name, '')
+ if params['type'] == 'link':
+ value = format_html(u'<a href="{url}">{url}</a>', url=value)
+ yield (field_name, value)
def update_complete(self):
marks = self.mark_set.all()
def update_complete(self):
marks = self.mark_set.all()