django-unfold-0: 安装与配置
Django Unfold 是基于Django Admin的管理框架,使用了Tailwind作为CSS框架。希望以后可以基于Django Unfold实现全栈开发和交付。
Django Unfold 安装
- 使用uv创建虚拟环境,uv详见uv管理工具
bash
uv init
uv venv --python=3.12 # 兼容最新版本的Django
cd .venv/Scripts
activate
uv add django
uv add django-unfold
uv add cookiecutter
uv add django-crispy-forms- 使用cookiecutter创建项目 使用本人cookiecutter模板创建项目,详见轻量化django cookiecutter模板,进行项目名称、作者、版本的设置。
cookiecutter git@github.com:silentQQQ/cookiecutter.git使用add_app.py创建django app
python add_app.py <app_name>验证app创建成功
python
python manage.py runserver
# 访问app_name url
127.0.0.1:8000/app_name/Django 配置
- settings.py 静态文件配置
python
STATICFILES_DIRS = [
BASE_DIR / "static",
]- urls.py 修改urls.py文件,在调试模式下提供静态文件服务
python
from django.contrib import admin
from django.urls import path,include
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('admin/', admin.site.urls),
]
if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)- 数据库迁移,创建superuser
bash
python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuserDjango Unfold 配置
Django Unfold配置 在settings.py中添加配置项,增加注释的栏目,和其他的配置项进行区分,注释掉暂时不用的配置项
# =======================================================
# unfold settings
# =======================================================
UNFOLD = {
"SITE_TITLE": "moomboss demo系统",
"SITE_HEADER": "moomboss网站",
"SITE_SUBHEADER": "明天上线",
}
# =======================================================
# end unfold settings
# =======================================================SITE_ICON 和 SITE_LOGO
在图标资源中选择适当的图标,下载svg文件,放到static目录下
使用了site-logo后不显示SITE_HEADER和SITE_SUBHEADER
这是一个常见的问题。使用SITE_LOGO时,它会覆盖SITE_HEADER和SITE_SUBHEADER的显示。 Unfold Admin的设计逻辑是:如果提供了logo,就优先显示logo而不是文本标题。
方案
如果使用SITE_ICON,将显示icon图像、SITE_HEADER和SITE_SUBHEADER。 如果使用了SITE_LOGO,确保logo图像包含相关信息,如网站的标题和副标题。 综上,省事的方案是使用SITE_ICON,显示配置文件中的SITE_HEADER和SITE_SUBHEADER信息。
Users & Groups
查看User & group models 在app的addmin.py中添加相关代码