Web Analytics

django-semantic-admin

⭐ 179 stars Simplified Chinese by globophobe

Django 语义 UI 管理主题 ------------------------------ django-semantic-admin

一个完全免费的(MIT 许可)Semantic UI Django 管理主题。实际上,这是我为 Django 开发的第 3 个管理主题。第一个令人难忘,第二个使用了 Pure CSS。Pure CSS 很棒,但缺少 JavaScript 组件。

Semantic UI 看起来专业,并且拥有很棒的 JavaScript 组件。

使用用户名 admin 和密码 semantic 登录演示:https://semantic-admin.com

文档托管在 GitHub Pages

Django 语义表单 --------------------- 🎉 从 v0.5.0 版本开始,表单已迁移到 django-semantic-forms。必须将 semantic_forms 添加到 INSTALLED_APPS 中。

INSTALLED_APPS = [
    "semantic_admin",
    "semantic_forms",
    ...
]

你可以在管理后台之外使用 semantic_forms

为什么? ----

安装 -------

从 PyPI 安装:

pip install django-semantic-admin

django.contrib.admin 之前添加到 settings.py

INSTALLED_APPS = [
    "semantic_admin",
    "semantic_forms",
    "django.contrib.admin",
    ...
]
请记得在生产部署时运行 python manage.py collectstatic

使用方法 -----

替代使用 admin.ModelAdminadmin.StackedInlineadmin.TabularInline

class ExampleStackedInline(admin.StackedInline):
    pass

class ExampleTabularInline(admin.TabularInline): pass

class ExampleAdmin(admin.ModelAdmin): inlines = (ExampleStackedInline, ExampleTabularInline)

继承自它们的 Semantic 等价项:

from semantic_admin import SemanticModelAdmin, SemanticStackedInline, SemanticTabularInline

class ExampleStackedInline(SemanticStackedInline): pass

class ExampleTabularInline(SemanticTabularInline): pass

class ExampleAdmin(SemanticModelAdmin): inlines = (ExampleStackedInline, ExampleTabularInline)

超棒的可选功能 -------------------------

django-filter

要启用此超棒功能,请在 Django 管理后台添加 filterset_class

from semantic_forms.filters import SemanticFilterSet

class DemoFilter(SemanticFilterSet): class Meta: model = Demo fields = ("demo_field",)

class DemoAdmin(SemanticModelAdmin): filterset_class = DemoFilter

html5-autocomplete

To enable this awesome feature, add the semantic_autocomplete property to your Django model:

class DemoModel(models.Model):
    @property
    def semantic_autocomplete(self):
        return self.get_img()

django-import-export

To enable this awesome feature, instead of ImportExportModelAdmin, etc:

from import_export.admin import ImportExportModelAdmin 

class ExampleImportExportAdmin(ImportExportModelAdmin): pass

继承自它们的 Semantic 等价物:

from semantic_admin.contrib.import_export.admin import SemanticImportExportModelAdmin

class ExampleImportExportAdmin(SemanticImportExportModelAdmin): pass

贡献 ------------

使用 uv sync --group dev 安装依赖。演示使用 invoke 任务 构建。例如,cd demo; uv run invoke build

注意事项 ----- 请注意,本包使用的是 Fomantic UI,这是 Semantic UI 的官方社区分支。

--- Tranlated By Open Ai Tx | Last indexed: 2026-05-22 ---