writer = csv.writer(response)
assignments = Assignment.objects.all()
participants = Participant.objects.filter(complete_set=True)
- headers = [u'imię', u'nazwisko', u'szkoła']
+ headers = [u'imię', u'nazwisko', u'szkoła', u'adres szkoły']
assignments_experts = []
for assignment in assignments:
for expert in assignment.experts.filter(mark__answer__assignment=assignment).distinct():
participant.first_name,
participant.last_name,
participant.contact.body['school'],
+ participant.contact.body['school_address'],
]
for assignment, expert in assignments_experts:
- try:
- row.append(
- Mark.objects.get(
- expert=expert, answer__assignment=assignment, answer__participant=participant).points)
- except Mark.DoesNotExist:
+ marks = expert.mark_set.filter(answer__assignment=assignment, answer__participant=participant)
+ if marks:
+ row.append(sum(mark.points for mark in marks))
+ else:
row.append('')
for assignment in assignments:
row.append('%.2f' % participant.answer_set.get(assignment=assignment).score())