改了一点前端显示(

This commit is contained in:
DSQ
2026-03-05 21:00:37 +08:00
parent 418cc798df
commit 193f739693
3 changed files with 38 additions and 8 deletions

View File

@@ -333,7 +333,7 @@ function renderTable(data) {
<td>
<pre style="white-space:pre-wrap; word-wrap:break-word; max-height: 100px; overflow-y: auto; font-size: 12px; margin: 0;">${escapeHtml(displayData)}</pre>
</td>
<td style="font-size: 12px;">${item.writer_id || ''}</td>
<td style="font-size: 12px;">${item.writer_name || item.writer_id || ''}</td>
<td>
<button class="btn btn-primary" onclick="openEdit('${item._id || item.id}')">编辑</button>
<button class="btn btn-danger" onclick="doDelete('${item._id || item.id}')">删除</button>

View File

@@ -81,6 +81,21 @@ def _attach_image_urls(request, items):
return out
def _attach_writer_names(items):
users = get_all_users()
name_by_id = {str(u.get("user_id")): u.get("username") for u in (users or [])}
out = []
for it in list(items or []):
try:
d = dict(it or {})
except Exception:
continue
wid = d.get("writer_id")
d["writer_name"] = name_by_id.get(str(wid), str(wid) if wid is not None else "")
out.append(d)
return out
@require_http_methods(["GET", "POST"])
@csrf_exempt
def init_index(request):
@@ -117,7 +132,8 @@ def search(request):
return JsonResponse({"status": "error", "message": "搜索关键词不能为空"}, status=400)
results = search_data(query)
return JsonResponse({"status": "success", "data": _attach_image_urls(request, results)})
data = _attach_writer_names(_attach_image_urls(request, results))
return JsonResponse({"status": "success", "data": data})
except Exception as e:
return JsonResponse({"status": "error", "message": str(e)}, status=500)
@@ -131,7 +147,8 @@ def fuzzy_search(request):
return JsonResponse({"status": "error", "message": "搜索关键词不能为空"}, status=400)
results = search_by_any_field(keyword)
return JsonResponse({"status": "success", "data": _attach_image_urls(request, results)})
data = _attach_writer_names(_attach_image_urls(request, results))
return JsonResponse({"status": "success", "data": data})
except Exception as e:
return JsonResponse({"status": "error", "message": str(e)}, status=500)
@@ -140,7 +157,8 @@ def get_all_data(request):
"""获取所有数据"""
try:
results = search_all()
return JsonResponse({"status": "success", "data": _attach_image_urls(request, results)})
data = _attach_writer_names(_attach_image_urls(request, results))
return JsonResponse({"status": "success", "data": data})
except Exception as e:
return JsonResponse({"status": "error", "message": str(e)}, status=500)
@@ -493,7 +511,11 @@ def upload_page(request):
from django.shortcuts import redirect
return redirect("/accounts/login/")
user_id_qs = request.GET.get("user_id")
context = {"user_id": user_id_qs or session_user_id}
me = get_user_by_id(session_user_id) or {}
context = {
"user_id": user_id_qs or session_user_id,
"username": me.get("username"),
}
return render(request, "elastic/upload.html", context)
@@ -666,6 +688,7 @@ def manage_page(request):
from django.shortcuts import redirect
return redirect("/accounts/login/")
me = get_user_by_id(session_user_id) or {}
is_admin = int(request.session.get("permission", 1)) == 0
if is_admin:
raw_results = search_all()
@@ -690,6 +713,7 @@ def manage_page(request):
"results": results,
"is_admin": is_admin,
"user_id": session_user_id,
"username": me.get("username"),
},
)
# 规范化键,避免模板点号访问下划线前缀字段
@@ -779,6 +803,7 @@ def user_manage(request):
user_id_qs = request.GET.get("user_id")
context = {
"user_id": user_id_qs or session_user_id,
"username": me.get("username"),
"is_admin": is_admin,
"is_tutor": (not is_admin) and has_manage,
"is_student": (not is_admin) and (not has_manage),
@@ -796,7 +821,11 @@ def registration_code_manage_page(request):
from django.shortcuts import redirect
return redirect("/main/home/")
user_id_qs = request.GET.get("user_id")
context = {"user_id": user_id_qs or session_user_id}
me = get_user_by_id(session_user_id) or {}
context = {
"user_id": user_id_qs or session_user_id,
"username": me.get("username"),
}
return render(request, "elastic/registration_codes.html", context)
@require_http_methods(["GET"])

View File

@@ -14,8 +14,8 @@ def home(request):
user_id_qs = request.GET.get("user_id")
uid = user_id_qs or session_user_id
perm = request.session.get("permission")
u = get_user_by_id(uid) if uid is not None else None
if perm is None and uid is not None:
u = get_user_by_id(uid)
try:
perm = int((u or {}).get("permission", 1))
except Exception:
@@ -28,6 +28,7 @@ def home(request):
perm = 1
context = {
"user_id": uid,
"username": (u or {}).get("username"),
"is_admin": (int(perm) == 0),
}
return render(request, "main/home.html", context)