添加均分计算

This commit is contained in:
Miu Li 2025-05-17 20:03:45 +08:00
parent 0d62ef66e6
commit df77a10735
2 changed files with 4 additions and 1 deletions

3
app.py
View File

@ -81,6 +81,7 @@ async def result(request: Request, scale_id: str):
if scale: if scale:
# 这里可以添加保存数据到数据库等逻辑 # 这里可以添加保存数据到数据库等逻辑
responses = {} responses = {}
average = {}
options = {} options = {}
for subscale, qids in scale['subscales'].items(): for subscale, qids in scale['subscales'].items():
responses[subscale] = 0 responses[subscale] = 0
@ -92,9 +93,11 @@ async def result(request: Request, scale_id: str):
responses[subscale] += min_val + max_val - int(form_data[str(-qid)]) responses[subscale] += min_val + max_val - int(form_data[str(-qid)])
else: else:
responses[subscale] += int(form_data[str(qid)]) responses[subscale] += int(form_data[str(qid)])
average[subscale] = round(responses[subscale]/len(qids),2)
return templates.TemplateResponse("result.html", { return templates.TemplateResponse("result.html", {
"request": request, "request": request,
"responses": responses, "responses": responses,
"average": average,
"options": options, "options": options,
"scale": scale, "scale": scale,
"tags":tags "tags":tags

View File

@ -8,7 +8,7 @@
<h1>{{ scale.title }} </h1> <h1>{{ scale.title }} </h1>
<ul> <ul>
{% for key, value in responses.items() %} {% for key, value in responses.items() %}
<li>{{ key }}: 在 {{options[key][0]}} 到 {{options[key][1]}} 的量表中得分 {{ value }}</li> <li>{{ key }}: 在 {{options[key][0]}} 到 {{options[key][1]}} 的量表中得分 {{ value }},均分 {{ average[key] }}</li>
{% endfor %} {% endfor %}
</ul> </ul>
<div> <div>