我成功使用Wagtail的wagtail.contrib.modeladmin
从Wagtail管理员那里制作了一个可编辑的常规Django模型。我想从我的模板超链接到modeladmin“创建”和“编辑”视图。我可以使用什么URL“名称”来引用这些视图? urls
中似乎没有wagtail.contrib.admin
模块,也没有关于此的文档。
这是我的directory
应用models.py
:
from django.db import models
class Organisation(models.Model):
title = models.CharField(max_length=255)
logo = models.ImageField(upload_to='logos', blank=True)
...
我的项目是urls.py
:
from django.conf.urls import include, url
urlpatterns = [
url(r'^admin/', include(wagtailadmin_urls)),
...
url(r'^directory/', include('directory.urls')),
]
答案 0 :(得分:5)
网址名称将采用以下格式,其中[action]
是index
,create
,edit
,delete
,{{1}之一}或inspect
:
choose_parent
例如:
[app_label]_[model_name]_modeladmin_[action]
{% url 'directory_organisation_modeladmin_index' %}
{% url 'directory_organisation_modeladmin_create' %}
{% url 'directory_organisation_modeladmin_edit' instance_pk=37 %}
{% url 'directory_organisation_modeladmin_delete' instance_pk=37 %}
{% url 'directory_organisation_modeladmin_inspect' instance_pk=37 %}
由于提供的URLConf不包含{% url 'directory_organisation_modeladmin_choose_parent' %}
的命名空间,因此不需要命名空间。
与Django的内置管理员类似,Wagtail在ModelAdmin.get_admin_urls_for_registration()
中动态生成这些网址,其中包含AdminURLHelper.get_action_url_name()
等帮助程序。