1

ドキュメントによると、アプリのルートディレクトリに「templates」という名前のフォルダーがある場合、djangoはアプリからテンプレートを自動的にロードする必要があります。

アプリを追加しました

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    # 'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    'django.contrib.admindocs',
    # Use email as username https://github.com/dabapps/django-email-as-username
     'emailusernames',
     'purchaseapp' # this is my app
)

テンプレートフォルダを作成しました

ここに画像の説明を入力してください

管理者をログインページとして使用するようにurlpatternsを設定しました

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'timely.views.home', name='home'),
    # url(r'^timely/', include('timely.foo.urls')),

    # Uncomment the admin/doc line below to enable admin documentation:
    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
    url(r'^admin/', include(admin.site.urls)),
    url(r'^$', hello),
    url(r'^accounts/logout/$', 'django.contrib.auth.views.logout'),
    url(r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'admin/login.html'}),
    url(r'^accounts/$', 'django.views.generic.simple.redirect_to', {'url': '/'}),
    url(r'^accounts/profile/$', 'django.views.generic.simple.redirect_to', {'url': '/'}),
)

base_site.htmlを上書きしましたが、カスタマイズが表示されません。これにより、フォルダーがTEMPLATE_DIRSに追加されるかどうかがわかります。

TEMPLATE_DIRS = (
    "/Users/nicola/Documents/Aptana Studio 3 Workspace/timely/purchaseapp/templates",
    # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
)

私は何が間違っているのですか?

4

2 に答える 2

0

問題は、おそらくdjangoが有効なテンプレートを見つけると検索を停止するため、私のアプリがcontrib管理者よりも最初に来なければならなかったことです。

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    # 'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'purchaseapp', #this is my app
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    'django.contrib.admindocs',
    # Use email as username https://github.com/dabapps/django-email-as-username
     'emailusernames',
)
于 2013-02-05T08:21:43.617 に答える
0

adminの下にさらにいくつかのディレクトリを作成する必要があります(ドキュメントから):

それらの1つ以上をオーバーライドするには、最初にプロジェクトのテンプレートディレクトリに管理ディレクトリを作成します。これは、TEMPLATE_DIRSで指定した任意のディレクトリにすることができます。

この管理ディレクトリ内に、アプリにちなんで名付けられたサブディレクトリを作成します。これらのアプリサブディレクトリ内に、モデルにちなんで名付けられたサブディレクトリを作成します。管理アプリはディレクトリを探すときにモデル名を小文字にすることに注意してください。大文字と小文字を区別するファイルシステムでアプリを実行する場合は、ディレクトリにすべて小文字で名前を付けるようにしてください。

特定のアプリの管理テンプレートを上書きするには、django / contrib / admin / templates / adminディレクトリからテンプレートをコピーして編集し、作成したディレクトリの1つに保存します。

于 2013-02-05T06:57:06.053 に答える