Download apps/cases/admin/caselog_admin.py from jun2024/fc: direct link, hf CLI and curl.
- Browser
- Download file 1.3 kB
-
https://huggingface.co/spaces/jun2024/fc/resolve/main/apps/cases/admin/caselog_admin.py
- Command line
-
hf download hf://spaces/jun2024/fc/apps/cases/admin/caselog_admin.py
-
curl -L -o caselog_admin.py https://huggingface.co/spaces/jun2024/fc/resolve/main/apps/cases/admin/caselog_admin.py
1.3 kB
| from __future__ import annotations | |
| from django.contrib import admin | |
| from django.forms import ModelForm | |
| from django.http import HttpRequest | |
| from apps.cases.admin.base_admin import BaseModelAdmin | |
| from apps.cases.models import CaseLog, CaseLogAttachment | |
| class CaseLogAdmin(BaseModelAdmin): | |
| list_display = ("id", "case", "actor", "reminder_type", "reminder_time", "created_at", "updated_at") | |
| search_fields = ("content", "case__name") | |
| autocomplete_fields = ("case", "actor") | |
| exclude = ("actor",) | |
| def save_model( | |
| self, | |
| request: HttpRequest, | |
| obj: CaseLog, | |
| form: ModelForm[CaseLog], | |
| change: bool, | |
| ) -> None: | |
| if not getattr(obj, "actor_id", None): | |
| user_id = getattr(request.user, "id", None) | |
| if user_id is not None: | |
| obj.actor_id = user_id | |
| super().save_model(request, obj, form, change) | |
| class CaseLogAttachmentAdmin(BaseModelAdmin): | |
| list_display = ("id", "log", "uploaded_at") | |
| search_fields = ("log__case__name",) | |
| autocomplete_fields = ("log",) | |
| def get_model_perms(self, request: HttpRequest) -> dict[str, bool]: | |
| """隐藏 Admin 首页入口,但保留直接 URL 访问能力""" | |
| return {} | |