Django管理索引
项目描述
- 版本:
- 3.1.1
- 下载:
- 源码:
- 关键词:
django, admin, dashboard
关于
此扩展允许您无需太多麻烦或视觉更改即可对Django管理索引页面进行分组、排序和自定义。
有两个概念:应用程序组和应用程序链接。您可以在Django管理中的“管理索引”下创建一个应用程序组并将任何模型添加到其中。模型是否显示给用户取决于常规Django权限以及是否在管理中注册。
应用程序链接只是一个带有名称的URL,您可以将其添加到应用程序组中。它显示为一个常规Django模型。
Django管理中的一项最终更改是删除了App列表,这些列表链接到App内的模型列表。这个概念已经过时。
安装
您可以通过Python包索引(PyPI)或从源代码安装django_admin_index。
要使用pip安装
$ pip install -U django-admin-index
用法
要在此项目中使用,您需要遵循以下步骤
将< span class="docutils literal">django_admin_index和< span class="docutils literal">ordered_model添加到Django项目的< span class="docutils literal">settings.py中的< span class="docutils literal">INSTALLED_APPS。确保< span class="docutils literal">django_admin_index在< span class="docutils literal">django.contrib.admin之前。
INSTALLED_APPS = ( "django_admin_index", "ordered_model", ..., "django.contrib.admin", )
注意,模块名称中没有连字符,只有下划线。
通过执行数据库迁移来创建数据库表
$ python manage.py migrate admin_index
转到您网站的Django管理,并查找“应用程序组”部分。
配置
您可以将以下可选设置添加到您的< span class="docutils literal">settings.py
< span class="docutils literal">ADMIN_INDEX_SHOW_REMAINING_APPS(默认为< span class="docutils literal">False)
将所有未添加到< cite>应用程序组的模型显示在名为“杂项”的组中,供< strong>staff用户使用。
注意:如果没有定义< cite>应用程序组,则将显示所有模型,无论此设置如何。
< span class="docutils literal">ADMIN_INDEX_SHOW_REMAINING_APPS_TO_SUPERUSERS(默认为< span class="docutils literal">True)
将所有未添加到< cite>应用程序组的模型显示在名为“杂项”的组中,供< strong>super users用户使用。
注意:如果没有定义< cite>应用程序组,则将显示所有模型,无论此设置如何。
< span class="docutils literal">ADMIN_INDEX_AUTO_CREATE_APP_GROUP(默认为< span class="docutils literal">False)
自动为所有将位于“杂项”组中的模型创建一个基于< cite>app_label的< cite>应用程序组。如果< span class="docutils literal">True,您的Django管理将最初看起来与通常一样。它不会更新现有的< cite>应用程序组。
< span class="docutils literal">ADMIN_INDEX_SHOW_MENU(默认为:< span class="docutils literal">True)
将管理索引作为菜单显示在面包屑之上。子菜单用已注册的模型填充。
< span class="docutils literal">ADMIN_INDEX_HIDE_APP_INDEX_PAGES(默认为:< span class="docutils literal">True)
从主索引和面包屑中删除指向应用索引页面的链接。
< span class="docutils literal">ADMIN_INDEX_DISPLAY_DROP_DOWN_MENU_CONDITION_FUNCTION(默认为:< span class="docutils literal">django_admin_index.utils.should_display_dropdown_menu)
一个Python点路径,可以导入以检查在管理中何时显示下拉菜单。默认实现是在用户是staff用户且< span class="docutils literal">ADMIN_INDEX_SHOW_MENU启用时显示此菜单。
额外
主题
默认情况下,django-admin-index选项卡/下拉菜单使用Django管理主题颜色。在Django 3.2+中,这些通过< span class="docutils literal">static/admin/css/base.css样式表中的CSS变量来控制。这些CSS变量用作django-admin-index自己的CSS变量的默认值。
有关所有可用的CSS变量,请参阅< span class="docutils literal">scss/_vars.scss。以下是一个简单的示例
:root {
--djai-tab-bg: #ff0080;
--djai-tab-bg--hover: #a91b60;
}
不支持CSS变量的规则可以用常规CSS覆盖。所有元素都遵循BEM方法命名CSS类名,例如 .djai-dropdown-menu__item 和 .djai-dropdown-menu__item.djai-dropdown-menu__item--active。
粘性头部
头部(通常是“Django管理”)包括由该库添加的菜单变为粘性(即,在滚动大页面时保持可见)。如果您不希望这样,可以添加一些CSS行,如下所示:
#header { position: initial; }
.djai-dropdown-menu { position: initial; }
贡献者
贡献者和维护者可以在虚拟环境中本地安装项目,包括所有测试依赖项。
(env) $ pip install -e .[tests,pep8,coverage,release]
运行测试套件
要为单个环境运行测试(目前安装在您的虚拟环境中),请使用 pytest。
(env) $ pytest
要运行完整的构建矩阵,请使用 tox。
(env) $ tox
开发前端
要开发样式表,您可以使用包含的测试项目。
(env) $ python manage.py runserver
您还需要安装前端工具并运行SCSS到CSS的监视模式编译。
npm install # one time to get the dependencies installed
npm run watch
一旦结果令人满意,您可以对样式表进行生产构建。
npm run scss
然后,提交更改并创建一个pull request。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。