我有一個 base.html 文件,其中有垂直和水平菜單欄:無論我想在哪里使用它,我只需簡單地寫:{% extends 'base.html' %}{% block content %}//html code{% endblock content %}但我不知道如何使用base.htmldjando admin 中的 templates 目錄中的相同文件。我想要這樣的輸出:我嘗試過的:如何覆蓋和擴展基本的 Django 管理模板?如何正確擴展 django admin/base.html 模板?覆蓋 Django 基本管理頁面中的導航欄,使其與 base.html 相同我嘗試了一些其他解決方案,只是不想增加問題的長度,并且base.html文件的代碼只有基本的引導程序、菜單的 html 代碼。我是 Django 的新手,如果有一點解釋,我將不勝感激!
2 回答

慕絲7291255
TA貢獻1859條經驗 獲得超6個贊
您正在尋找的內容與 類似nav-global
。
嘗試這個:
首先在您的文件夾中創建一個文件夾templates
as并在同一文件夾中admin
創建一個 html 文件( )base_site.html
假設您有單獨的菜單欄 html 文件(假設該文件是nav.html
)。
將以下代碼寫入base_site.html
:
{% extends 'admin/base.html' %} {% block nav-global %} {% include 'nav.html' %} #Your navigation html file {% endblock %}
與問題無關:我找到了一個git 存儲庫,它可以讓您了解如何自定義 django-admin 菜單。

明月笑刀無情
TA貢獻1828條經驗 獲得超4個贊
您可以將管理員的基本模板擴展為
{% extends "admin/base.html" %}
例如:
{% extends "admin/base.html" %}
{% block sidebar %}
{{ block.super }}
<div>
<h1>Extra links</h1>
<a href="/admin/extra/">My extra link</a>
</div>
{% endblock %}
另外,請確保您已將admin應用程序添加到INSTALLED_APPS
INSTALLED_APPS = [
# other apps,
'django.contrib.admin',
# other apps,
]
添加回答
舉報
0/150
提交
取消