直接链接到 Wagtail modeladmin 视图
Linking directly to Wagtail modeladmin views
我成功地使用 Wagtail 的 wagtail.contrib.modeladmin
制作了一个可从 Wagtail 管理员编辑的常规 Django 模型。我想从我的模板超链接到 modeladmin "create" 和 "edit" 视图。我可以用来引用这些视图的 URL "name" 是什么? wagtail.contrib.admin
中似乎没有 urls
模块,也没有相关文档。
这是我的 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')),
]
URL 名称将采用以下形式,其中 [action]
是 index
、create
、edit
、[=15= 之一], 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 %}
{% url 'directory_organisation_modeladmin_choose_parent' %}
由于提供的 URLConf 不包含 include()
的命名空间参数,因此不需要命名空间。
类似于 Django 的内置 Admin,Wagtail 在 ModelAdmin.get_admin_urls_for_registration()
with some helpers like AdminURLHelper.get_action_url_name()
.
中动态生成这些 URLs
我成功地使用 Wagtail 的 wagtail.contrib.modeladmin
制作了一个可从 Wagtail 管理员编辑的常规 Django 模型。我想从我的模板超链接到 modeladmin "create" 和 "edit" 视图。我可以用来引用这些视图的 URL "name" 是什么? wagtail.contrib.admin
中似乎没有 urls
模块,也没有相关文档。
这是我的 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')),
]
URL 名称将采用以下形式,其中 [action]
是 index
、create
、edit
、[=15= 之一], 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 %}
{% url 'directory_organisation_modeladmin_choose_parent' %}
由于提供的 URLConf 不包含 include()
的命名空间参数,因此不需要命名空间。
类似于 Django 的内置 Admin,Wagtail 在 ModelAdmin.get_admin_urls_for_registration()
with some helpers like AdminURLHelper.get_action_url_name()
.