Skip to main content

鹡鸰的 TreeModelAdmin

项目描述

Wagtail-TreeModelAdmin

构建状态 覆盖状态

TreeModelAdmin 插图以及下面的书籍和作者示例

Wagtail -TreeModelAdmin 是 Wagtail 的ModelAdmin的扩展,它允许在 Wagtail 管理员中进行类似页面浏览器的 Django 模型关系导航。

依赖项

  • Python 3.6+
  • Django 2.2(LTS)、3.1(当前)
  • 鹡鸰 2.11 (LTS), <3 (当前)

它也应该与所有中间版本兼容。如果您发现不是,请提出问题。

安装

  1. 安装 wagtail-treemodeladmin:
pip install wagtail-treemodeladmin
  1. 在 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中找到。

许可

  1. 条款
  2. 执照
  3. CFPB 源代码政策

学分和参考

  1. 从cfgov-refresh 分叉

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

wagtail-treemodeladmin-1.5.0.tar.gz (16.0 kB 查看哈希)

已上传 source

内置分布

wagtail_treemodeladmin-1.5.0-py2.py3-none-any.whl (20.1 kB 查看哈希)

已上传 py2 py3