Commit aab6a036ed2d3d51dda3b61c534dd55d26e9fb40
1 parent
216b2b5f
Exists in
master
and in
1 other branch
minor changes
Showing
5 changed files
with
11 additions
and
2 deletions
Show diff stats
BUGS.md
1 | 1 | |
2 | 2 | # BUGS |
3 | 3 | |
4 | +- perguntas repetidas (mesma ref) dao asneira, porque a referencia é usada como chave em varios sitios e as chaves nao podem ser dupplicadas. | |
5 | + da asneira pelo menos na funcao get_questions_csv. na base de dados tem de estar registado tb o numero da pergunta, caso contrario é impossível saber a qual corresponde. | |
6 | +- show-ref nao esta a funcionar na correccao (pelo menos) | |
4 | 7 | - algumas submissões ficaram em duplicado na base de dados. a base de dados deveria ter como chave do teste um id que fosse único desse teste particular (não um auto counter, nem ref do teste) |
5 | 8 | - guardar nota final grade truncado em zero e sem ser truncado (quando é necessário fazer correcções à mão às perguntas, é necessário o valor não truncado) |
6 | 9 | - internal server error quando em --review, download csv detalhado. | ... | ... |
perguntations/app.py
... | ... | @@ -343,10 +343,16 @@ class App(): |
343 | 343 | .order_by(Question.student_id)\ |
344 | 344 | .all() |
345 | 345 | |
346 | + # first row of the csv will include student_id, date/time, and refs for | |
347 | + # all questions declared in the test | |
346 | 348 | cols = ['Aluno', 'Início'] + \ |
347 | 349 | [r for question in self.testfactory['questions'] |
348 | 350 | for r in question['ref']] |
349 | 351 | |
352 | + # tests is a dict of dicts: FIXME what about duplicate qrefs??? | |
353 | + # { (student_id, time): {qref: grade, ...} } | |
354 | + # the key is a tuple (student_id, time) because the same student can | |
355 | + # repeat the same test multiple times (if the professor allows). | |
350 | 356 | tests = {} |
351 | 357 | for question in grades: |
352 | 358 | student, qref, qgrade = question[:2], *question[2:] | ... | ... |
perguntations/serve.py
... | ... | @@ -191,7 +191,7 @@ class LoginHandler(BaseHandler): |
191 | 191 | self.set_secure_cookie('perguntations_user', str(uid)) |
192 | 192 | self.redirect('/') |
193 | 193 | else: |
194 | - await asyncio.sleep(3) # to avoid spamming the server... | |
194 | + await asyncio.sleep(3) # delay to avoid spamming the server... | |
195 | 195 | self.render('login.html', error=self._error_msg[error]) |
196 | 196 | |
197 | 197 | ... | ... |
perguntations/templates/login.html
... | ... | @@ -12,7 +12,6 @@ |
12 | 12 | |
13 | 13 | <!-- Scripts --> |
14 | 14 | <script src="/static/jquery/jquery.min.js"></script> |
15 | - <!-- <script defer src="/static/popper.js/popper.min.js"></script> --> | |
16 | 15 | <script defer src="/static/fontawesome-free/js/all.min.js"></script> |
17 | 16 | <script defer src="/static/bootstrap/js/bootstrap.bundle.min.js"></script> |
18 | 17 | ... | ... |