改了一点前端显示(
This commit is contained in:
@@ -333,7 +333,7 @@ function renderTable(data) {
|
|||||||
<td>
|
<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>
|
<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>
|
||||||
<td style="font-size: 12px;">${item.writer_id || ''}</td>
|
<td style="font-size: 12px;">${item.writer_name || item.writer_id || ''}</td>
|
||||||
<td>
|
<td>
|
||||||
<button class="btn btn-primary" onclick="openEdit('${item._id || item.id}')">编辑</button>
|
<button class="btn btn-primary" onclick="openEdit('${item._id || item.id}')">编辑</button>
|
||||||
<button class="btn btn-danger" onclick="doDelete('${item._id || item.id}')">删除</button>
|
<button class="btn btn-danger" onclick="doDelete('${item._id || item.id}')">删除</button>
|
||||||
|
|||||||
@@ -81,6 +81,21 @@ def _attach_image_urls(request, items):
|
|||||||
return out
|
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"])
|
@require_http_methods(["GET", "POST"])
|
||||||
@csrf_exempt
|
@csrf_exempt
|
||||||
def init_index(request):
|
def init_index(request):
|
||||||
@@ -117,7 +132,8 @@ def search(request):
|
|||||||
return JsonResponse({"status": "error", "message": "搜索关键词不能为空"}, status=400)
|
return JsonResponse({"status": "error", "message": "搜索关键词不能为空"}, status=400)
|
||||||
|
|
||||||
results = search_data(query)
|
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:
|
except Exception as e:
|
||||||
return JsonResponse({"status": "error", "message": str(e)}, status=500)
|
return JsonResponse({"status": "error", "message": str(e)}, status=500)
|
||||||
|
|
||||||
@@ -131,7 +147,8 @@ def fuzzy_search(request):
|
|||||||
return JsonResponse({"status": "error", "message": "搜索关键词不能为空"}, status=400)
|
return JsonResponse({"status": "error", "message": "搜索关键词不能为空"}, status=400)
|
||||||
|
|
||||||
results = search_by_any_field(keyword)
|
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:
|
except Exception as e:
|
||||||
return JsonResponse({"status": "error", "message": str(e)}, status=500)
|
return JsonResponse({"status": "error", "message": str(e)}, status=500)
|
||||||
|
|
||||||
@@ -140,7 +157,8 @@ def get_all_data(request):
|
|||||||
"""获取所有数据"""
|
"""获取所有数据"""
|
||||||
try:
|
try:
|
||||||
results = search_all()
|
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:
|
except Exception as e:
|
||||||
return JsonResponse({"status": "error", "message": str(e)}, status=500)
|
return JsonResponse({"status": "error", "message": str(e)}, status=500)
|
||||||
|
|
||||||
@@ -493,7 +511,11 @@ def upload_page(request):
|
|||||||
from django.shortcuts import redirect
|
from django.shortcuts import redirect
|
||||||
return redirect("/accounts/login/")
|
return redirect("/accounts/login/")
|
||||||
user_id_qs = request.GET.get("user_id")
|
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)
|
return render(request, "elastic/upload.html", context)
|
||||||
|
|
||||||
|
|
||||||
@@ -666,6 +688,7 @@ def manage_page(request):
|
|||||||
from django.shortcuts import redirect
|
from django.shortcuts import redirect
|
||||||
return redirect("/accounts/login/")
|
return redirect("/accounts/login/")
|
||||||
|
|
||||||
|
me = get_user_by_id(session_user_id) or {}
|
||||||
is_admin = int(request.session.get("permission", 1)) == 0
|
is_admin = int(request.session.get("permission", 1)) == 0
|
||||||
if is_admin:
|
if is_admin:
|
||||||
raw_results = search_all()
|
raw_results = search_all()
|
||||||
@@ -690,6 +713,7 @@ def manage_page(request):
|
|||||||
"results": results,
|
"results": results,
|
||||||
"is_admin": is_admin,
|
"is_admin": is_admin,
|
||||||
"user_id": session_user_id,
|
"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")
|
user_id_qs = request.GET.get("user_id")
|
||||||
context = {
|
context = {
|
||||||
"user_id": user_id_qs or session_user_id,
|
"user_id": user_id_qs or session_user_id,
|
||||||
|
"username": me.get("username"),
|
||||||
"is_admin": is_admin,
|
"is_admin": is_admin,
|
||||||
"is_tutor": (not is_admin) and has_manage,
|
"is_tutor": (not is_admin) and has_manage,
|
||||||
"is_student": (not is_admin) and (not 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
|
from django.shortcuts import redirect
|
||||||
return redirect("/main/home/")
|
return redirect("/main/home/")
|
||||||
user_id_qs = request.GET.get("user_id")
|
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)
|
return render(request, "elastic/registration_codes.html", context)
|
||||||
|
|
||||||
@require_http_methods(["GET"])
|
@require_http_methods(["GET"])
|
||||||
|
|||||||
@@ -14,8 +14,8 @@ def home(request):
|
|||||||
user_id_qs = request.GET.get("user_id")
|
user_id_qs = request.GET.get("user_id")
|
||||||
uid = user_id_qs or session_user_id
|
uid = user_id_qs or session_user_id
|
||||||
perm = request.session.get("permission")
|
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:
|
if perm is None and uid is not None:
|
||||||
u = get_user_by_id(uid)
|
|
||||||
try:
|
try:
|
||||||
perm = int((u or {}).get("permission", 1))
|
perm = int((u or {}).get("permission", 1))
|
||||||
except Exception:
|
except Exception:
|
||||||
@@ -28,6 +28,7 @@ def home(request):
|
|||||||
perm = 1
|
perm = 1
|
||||||
context = {
|
context = {
|
||||||
"user_id": uid,
|
"user_id": uid,
|
||||||
|
"username": (u or {}).get("username"),
|
||||||
"is_admin": (int(perm) == 0),
|
"is_admin": (int(perm) == 0),
|
||||||
}
|
}
|
||||||
return render(request, "main/home.html", context)
|
return render(request, "main/home.html", context)
|
||||||
|
|||||||
Reference in New Issue
Block a user