在django中添加指向admin索引页面的链接

时间:2015-03-23 13:10:07

标签: django django-templates

如何将页面链接到django的管理页面? 我已经尝试更改base.html页面,但它会反映到管理员的所有html页面。这可以仅链接到管理员的索引页面,其中列出了所有应用程序。

2 个答案:

答案 0 :(得分:1)

您必须覆盖 Django admin index.html 页面

第一步:

在您的模板文件夹中创建新文件,例如将其称为“ index.html ”。 例如,文件路径将类似于:“ YOUR_PROJECT / templates / admin / index.html ”并复制以下代码:

{% extends "admin/index.html" %}

{% block content %}
<h1>YOUR EXTRA CODE</h1>
{{ block.super }}
{% endblock %}

第二步:

在YOUR_MAIN_PROJECT文件夹中创建新文件-沿 settings.py -命名为 admin.py 并复制以下代码:

from django.contrib.admin import AdminSite


class CustomAdmin(AdminSite):
    index_template = 'admin/base_site.html'


custom_admin_site = CustomAdmin(name='admin')

第三步:

在YOUR_APP admin.py 文件中,输入以下代码:

from YOUR_MAIN_PROJECT.admin import custom_admin_site
from .models import YOUR_MODEL_1, YOUR_MODEL_2

custom_admin_site.register(YOUR_MODEL_1)
custom_admin_site.register(YOUR_MODEL_2)

希望这对您有所帮助,

答案 1 :(得分:0)

<a href="{% url 'admin:index' %}">Admin panel</a>

但您必须在URLS.py

中添加admin.site.urls
url(r'^admin/', include(admin.site.urls)),

但是如果你想在你的一个网站上渲染管理网站(比方说索引):

url(r'', include(admin.site.urls)),

应该做的伎俩