Ben*_*els 1 python django wagtail
我已成功使用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)
...
Run Code Online (Sandbox Code Playgroud)
我的项目是urls.py:
from django.conf.urls import include, url
urlpatterns = [
url(r'^admin/', include(wagtailadmin_urls)),
...
url(r'^directory/', include('directory.urls')),
]
Run Code Online (Sandbox Code Playgroud)
URL名称将是以下形式,其中的[action]是一个index,create,edit,delete,inspect或choose_parent:
[app_label]_[model_name]_modeladmin_[action]
Run Code Online (Sandbox Code Playgroud)
例如:
{% 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不包含的名称空间argement include(),因此不需要名称空间。
与Django的内置Admin相似,Wagtail ModelAdmin.get_admin_urls_for_registration()借助诸如之类的帮助程序在中动态生成这些URL AdminURLHelper.get_action_url_name()。