2016-11-26 7 views
1

私は、ページの上部にあるaddオブジェクトの横にあるchange_list djangoの管理ページにカスタムボタンを追加しようとしています。django管理用テンプレートを拡張する

{% extends "admin/change_list.html" %} 
{% load i18n %} 
{% block object-tools-items %} 
{{ block.super }} 
<li> 
    <button class="" href="...">Click Here!</button> 
</li> 
{% endblock %} 

多くのチュートリアルに従いましたが、成功しませんでした。 私は私のsettings.pyで'APP_DIRS': True,を持っており、私のプロジェクトは次のようである:

custom_template.html
project/ 
    app/ 
     templates/ 
      change_list.html 
      custom_template.html 

はchange_listでのアクションであり、それは動作します。 何か不足していますか?

EDIT:すでに試した

プロジェクト/アプリ/テンプレート/管理/ change_list.htmlプロジェクト/アプリ/テンプレート/アプリ/管理/ change_list.html

どちらもうまくいきませんでした。

+0

ベースでテンプレートの場所この質問では、拡張タグにアプリ名を指定するのを忘れたようです。http://stackoverflow.com/questions/6583877/how-to-override-and-extend-basic-django-admin-templates – Wonskcalb

答えて

1

は、この場所にファイル命を上書きchange_list.html:

プロジェクト/アプリ/テンプレート/管理/アプリ/ change_list.html

あなたはほとんどそれを得ました。 :)

また、django-debug-toolbarを使用して、ブラウザ側でアップロードされた実際のテンプレートを取得することもできます。

0

変更します プロジェクト/テンプレート/管理/ change_list.html

テンプレートで 'change_list.html'

{% extends 'admin/base.html' %} 
{% block branding %} 
<h1 id="site-name">My custom Admin</h1> 
{% endblock %} 

を書くにしてsetting.py

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 
TEMPLATES = [ 
{ 
    'DIRS': [os.path.join(BASE_DIR, 'templates')], 
}] 
関連する問題