Я никогда не просматривал страницы с административными документами Views - у меня никогда не было необходимости. B4 но вы правы, они, кажется, лишены потенциальных возможностей.
Если вы предоставите своим представлениям функции строк документации (документации), этот контент появится на ваших "пустых страницах".
Большинство - нет, все - представлений сайтов администраторов на самом деле представляют собой методы admin.sites.AdminSite
. Я оглянулся вокруг, и вид 40, который использует декоратор, также страдает от 404.
Запускается представление, отвечающее за детали просмотра:
def view_detail(request, view):
if not utils.docutils_is_available:
return missing_docutils_page(request)
mod, func = urlresolvers.get_mod_func(view)
try:
view_func = getattr(import_module(mod), func)
except (ImportError, AttributeError):
raise Http404
title, body, metadata = utils.parse_docstring(view_func.__doc__)
...
Вы можете видеть, что он пытается импортировать представление, чтобы получить от него информацию; если представление на самом деле является декоратором (который, вероятно, использовал внутреннюю функцию для переноса реального представления), оно не сможет импортировать его. Например, если вы выполните from django.contrib.admin.sites import index
в оболочке django, вы получите ImportError, тогда как django.contrib.admin.site.index
(обратите внимание на единственное число site
) это:
<bound method AdminSite.index of <django.contrib.admin.sites.AdminSite object at 0x...>>
Кроме того, последняя строка в моем фрагменте, по-видимому, указывает на возможность более точного контроля над тем, что отображается на этих страницах, если вы захотите выяснить, какой шаблон util.parse_docstring
использует.