schon/blog/admin.py
Egor fureunoir Gorbunov ab10a7a0b7 Features: 1) Add SEO meta utilities and builder functions for schemas; 2) Implement SEO-related APIs in viewsets for categories, brands, and products; 3) Add SeoMeta model and serializer to manage SEO metadata.
Fixes: 1) Resolve annotations compatibility with mypy `type: ignore` adjustments; 2) Correct `resolve_price_with_currency` method to ensure proper float returns; 3) Handle scenarios for empty or null queryset in vendor methods.

Extra: 1) Refactor utility functions for better type annotations and robustness; 2) Minor formatting corrections and removal of redundant mypy strict setting; 3) Improve method return types for consistency.
2025-08-18 14:26:09 +03:00

40 lines
1.1 KiB
Python

from django.contrib.admin import ModelAdmin, register
from django_summernote.admin import SummernoteModelAdminMixin
from core.admin import ActivationActionsMixin, FieldsetsMixin
from .models import Post, PostTag
@register(Post)
class PostAdmin(SummernoteModelAdminMixin, FieldsetsMixin, ActivationActionsMixin, ModelAdmin): # type: ignore [misc]
list_display = ("title", "author", "slug", "created", "modified")
list_filter = ("author", "tags", "created", "modified")
search_fields = ("title", "content", "slug")
filter_horizontal = ("tags",)
date_hierarchy = "created"
autocomplete_fields = ("author", "tags")
readonly_fields = (
"uuid",
"slug",
"modified",
"created",
)
summernote_fields = ("content",)
general_fields = [
"title",
"author",
"content",
"file",
]
relation_fields = [
"tags",
]
@register(PostTag)
class PostTagAdmin(ModelAdmin):
list_display = ("tag_name", "name")
search_fields = ("tag_name", "name")
ordering = ("tag_name",)