Files
2026-08-05 23:59:15 +08:00

26 lines
731 B
Python

from .models import LoginRecord
def _get_client_ip(request):
x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
if x_forwarded_for:
return x_forwarded_for.split(',')[0].strip()
return request.META.get('REMOTE_ADDR', '')
def create_login_record(request, user, record_status='success'):
try:
ip_address = _get_client_ip(request)
device = request.META.get('HTTP_USER_AGENT', '') or ''
if len(device) > 200:
device = device[:200]
LoginRecord.objects.create(
user=user,
ip_address=ip_address or None,
device=device,
location='',
status=record_status,
)
except Exception:
pass