我希望在没有模型的情况下为管理员面板创建自定义页面。首先,我将index.html复制到项目文件夹中:
mysite/
templates/
admin/
index.html
然后将我的代码添加到应用程序块中:
<div class="module">
<table summary="{% blocktrans with name="preferences" %}Models available in the preferences application.{% endblocktrans %}">
<caption><a href="preferences" class="section">{% blocktrans with name="preferences" %}Preferences{% endblocktrans %}</a></caption>
<tr>
<th scope="row"><a href="preferences">Preferences</a></th>
<td><a href="preferences" class="changelink">{% trans 'Change' %}</a></td>
</tr>
</table>
</div>
这样做很有效果,然后我创建了新的页面/templates/admin/preferences/preferences.html,并且在urls.py中添加了:
url(r'^admin/preferences/$', TemplateView.as_view(template_name='admin/preferences/preferences.html')),
并在 preferences.html 中添加代码:
{% extends "admin/base_site.html" %}
{% block title %}Test page{% endblock %}
运行代码后,提示出现错误消息"The requested admin page does not exist."。我做错了什么?
urls.py
文件中?可能是因为Django管理后台中的一个更通用的正则表达式捕获了/admin/preferences
,所以它从未到达你的URL正则表达式。 - Simeon Visser^ testadmin / preferences / $
? - Simeon Visser