feat(api): 为汇总记录提交添加来源验证和来源字段
- 移除 api_submit_summary 的 csrf_exempt 装饰器 - 允许客户端提交来源字段 - 在提交工具中添加来源输入框 - 自动生成来源信息当未提供时
This commit is contained in:
@@ -806,7 +806,6 @@ def pdf_list(request):
|
||||
|
||||
return render(request, 'core/pdf_list.html', context)
|
||||
|
||||
@csrf_exempt
|
||||
def api_submit_summary(request):
|
||||
"""API提交汇总记录 - 仅接受指定分类和发言人的记录"""
|
||||
logger.info("API: 收到汇总记录提交请求")
|
||||
@@ -835,10 +834,17 @@ def api_submit_summary(request):
|
||||
logger.error(f"API: 发言人 '{speaker_name}' 不存在")
|
||||
return JsonResponse({'success': False, 'message': f"发言人 '{speaker_name}' 不存在"}, status=400)
|
||||
|
||||
import socket
|
||||
hostname = socket.gethostname()
|
||||
local_ip = socket.gethostbyname(hostname)
|
||||
source = f"{hostname} ({local_ip})"
|
||||
# 获取来源,支持客户端提交
|
||||
source = request.POST.get('source', '').strip()
|
||||
if not source:
|
||||
source = ""
|
||||
|
||||
# 如果没有提供来源,自动生成
|
||||
if not source:
|
||||
import socket
|
||||
hostname = socket.gethostname()
|
||||
local_ip = socket.gethostbyname(hostname)
|
||||
source = f"{hostname} ({local_ip})"
|
||||
|
||||
summary = Summary.objects.create(
|
||||
date=timezone.now().date(),
|
||||
|
||||
Reference in New Issue
Block a user