Добавить подменю в трясогузку админ - PullRequest
1 голос
/ 06 ноября 2019

Wagtail - это замечательная CMS. У меня есть вопрос, как добавить подменю в админке. У меня есть нестандартная модель. В этой модели у меня 2 иностранных ключа. Для управления моделью локаций в созданном через modeladmin меню. Однако для управления городским или чужим контентом мне также нужно создать в modeladmin.

Я вижу только опцию в modeladmin для добавления пункта в меню настроек. В моем админе мне нужно следующее

+ pages
++ ...
+ locations
++ locations
++ cities
++ tags
+ ...

В настоящее время я могу определить порядок только через menu_order = 200

Есть ли способ сделать навигацию в трясогузке суб-навигацией

Ответы [ 2 ]

1 голос
/ 06 ноября 2019

Вы можете использовать ModelAdminGroup для группировки нескольких представлений ModelAdmin в подменю:

http://docs.wagtail.io/en/stable/reference/contrib/modeladmin/index.html#a-more-complicated-example

from wagtail.contrib.modeladmin.options import ModelAdmin, ModelAdminGroup, modeladmin_register

class LocationGroup(ModelAdminGroup):
    menu_label = 'Locations'
    items = (LocationAdmin, CityAdmin, TagAdmin)

modeladmin_register(LocationGroup)
0 голосов
/ 06 ноября 2019

Ах, я нашел это.

Вы можете использовать ModelAdminGroup

https://docs.wagtail.io/en/v2.7/reference/contrib/modeladmin/index.html#summary-of-features

    menu_label = 'Library'
    menu_icon = 'folder-open-inverse'  # change as required
    menu_order = 200  # will put in 3rd place (000 being 1st, 100 2nd)
    items = (BookAdmin, AuthorAdmin, GenreAdmin)

# When using a ModelAdminGroup class to group several ModelAdmin classes together,
# you only need to register the ModelAdminGroup class with Wagtail:
modeladmin_register(LibraryGroup)
...