diff --git a/README.md b/README.md new file mode 100644 index 0000000..8c3359a --- /dev/null +++ b/README.md @@ -0,0 +1,16 @@ +# 心尺 PsychoScales (Org) + +## 什么是PsychoScales + +PsychoScales网站是一个专业的心理学资源平台,旨在为用户提供全面的心理学测量工具和评估资源。我们汇集了各种心理测量工具,涵盖了情绪、人格、认知能力、心理健康等多个领域,帮助用户更好地了解自己的心理特点和状况。 + +作为PsychoScales网站的用户,您可以通过简单的在线测试,快速获取关于自己心理特征的详细报告和分析。这些测量工具基于权威的心理学理论和研究,确保了测试结果的准确性和可靠性。 + +[心尺主站](https://psygscales.com/) + +## 什么是PsychoScales Org + +这个一个开源的量表框架,基于Python搭建。 +本项目的量表加载完全基于json,不使用任何数据库。同时也可以通过易于编辑的txt文件制作可以加载的json。 + +[开源地址](https://git.mxr612.io/PsychoScales/PsychoScales) \ No newline at end of file diff --git a/app.py b/app.py index 531366c..cc92e44 100644 --- a/app.py +++ b/app.py @@ -1,5 +1,6 @@ from fastapi import FastAPI, Request, HTTPException from fastapi.responses import HTMLResponse +import markdown from fastapi.staticfiles import StaticFiles from fastapi.templating import Jinja2Templates import json @@ -25,7 +26,18 @@ def load_all_scales(): @app.get("/", response_class=HTMLResponse) async def index(request: Request): scales = load_all_scales() - return templates.TemplateResponse("index.html", {"request": request, "scales": scales}) + # 新增读取README.md的逻辑 + readme_content = "" + try: + with open("README.md", "r", encoding="utf-8") as f: + readme_content = markdown.markdown(f.read()) + except FileNotFoundError: + pass # 如果README不存在则静默失败 + return templates.TemplateResponse("index.html", { + "request": request, + "scales": scales, + "readme_content": readme_content # 新增模板变量 + }) @app.get("/scales/{scale_id}", response_class=HTMLResponse) async def scale(request: Request, scale_id: str): diff --git a/requirements.txt b/requirements.txt index c88c845..39187f7 100644 Binary files a/requirements.txt and b/requirements.txt differ diff --git a/templates/index.html b/templates/index.html index b182f07..783d553 100644 --- a/templates/index.html +++ b/templates/index.html @@ -6,7 +6,11 @@ 心尺 PsychoScales -

心尺 PsychoScales

+ {% if readme_content %} +
+ {{ readme_content|safe }} +
+ {% endif %}