鹡鸰的 TreeModelAdmin
项目描述
Wagtail-TreeModelAdmin
Wagtail -TreeModelAdmin 是 Wagtail 的ModelAdmin的扩展,它允许在 Wagtail 管理员中进行类似页面浏览器的 Django 模型关系导航。
依赖项
- Python 3.6+
- Django 2.2(LTS)、3.1(当前)
- 鹡鸰 2.11 (LTS), <3 (当前)
它也应该与所有中间版本兼容。如果您发现不是,请提出问题。
安装
- 安装 wagtail-treemodeladmin:
pip install wagtail-treemodeladmin
- 在 Django 中添加
treemodeladmin(wagtail.contrib.modeladmin如果还没有)作为已安装的应用程序settings.py:
INSTALLED_APPS = (
...
'wagtail.contrib.modeladmin',
'treemodeladmin',
...
)
概念
Wagtail-TreeModelAdmin 允许 Wagtail 管理中的 Django 一对多关系的 Wagtail 页面浏览器式导航。在这样做时,它将 DjangoForeignKey关系概念化为父母与孩子的关系。父母是关系的目的地to,ForeignKey孩子是关系的源头。
Wagtail -TreeModelAdmin 是Wagtail 的 ModelAdmin的扩展。它的用途与ModelAdmin.
用法
快速开始
要使用 Wagtail-TreeModelAdmin,您首先需要定义一些将在 Wagtail Admin 中公开的模型。
# libraryapp/models.py
from django.db import models
class Author(models.Model):
name = models.CharField(max_length=255)
class Book(models.Model):
author = models.ForeignKey(Author, on_delete=models.PROTECT)
title = models.CharField(max_length=255)
然后创建TreeModelAdmin子类并使用以下方法注册树的根modeladmin_register:
# libraryapp/wagtail_hooks.py
from wagtail.contrib.modeladmin.options import modeladmin_register
from treemodeladmin.options import TreeModelAdmin
from libraryapp.models import Author, Book
class BookModelAdmin(TreeModelAdmin):
model = Book
parent_field = 'author'
@modeladmin_register
class AuthorModelAdmin(TreeModelAdmin):
menu_label = 'Library'
menu_icon = 'list-ul'
model = Author
child_field = 'book_set'
child_model_admin = BookModelAdmin
然后访问 Wagtail 管理员。Library将出现在菜单中,并为您提供作者列表,每个作者都有一个链接,可将您带到他们的书籍。
API
Wagtail-TreeModelAdmin 在 ModelAdmin 子类上使用三个新属性来表达父/子关系:
parent_fieldForeignKey:子模型上Django 的名称。child_field:related_name在 Django 上ForeignKey。child_model_admin
任何子TreeModelAdmin类都可以指定父子关系。树的根(TreeModelAdmin包含在 aModelAdminGroup或@modeladmin_registeredTreeModelAdmin子类中)应该只包含child_*字段。
获得帮助
请将问题添加到问题跟踪器。
卷入
关于如何贡献的一般说明可以在CONTRIBUTING中找到。
许可
学分和参考
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
内置分布
wagtail_treemodeladmin -1.5.0-py2.py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 94b6619a668cabbb7c69cdb5c49100bbec6083aa7e701fc40cbd4310784f3905 |
|
| MD5 | bcae0909641c1d2dac046ac02310ca87 |
|
| 布莱克2-256 | 0c25438221cf113d7f88c1e50348626853682f9dd5d4bae8ae421b7f52bb4814 |