0

私はDjangoが初めてです。管理者ログイン以外の動的コンテンツを持たないホームページを表示したいと考えています。これに direct_to_template ジェネリック ビューを使用してみましたが、URL を開くと、テンプレートが存在しないというエラーが表示されます。

from django.conf.urls import patterns, include, url
from django.conf import settings
from django.conf.urls.defaults import *
from django.contrib import admin
from django.views.generic.simple import direct_to_template
admin.autodiscover()

  urlpatterns = patterns('',
  url(r'^$', direct_to_template, {'template': 'homepage.html'}),

  url(r'^STUDENT_REGISTERATION/', include('STUDENT_REGISTERATION.urls')),

  url(r'^admin/', include(admin.site.urls)),
  )`

テンプレート ディレクトリは /django-1.4/Project/templates にあります。

4

1 に答える 1

2

地獄の門が言ったように、テンプレートをアプリケーションのルート (プロジェクトであるはず) に置きたい場合は、TEMPLATE_DIRS を設定する必要があります。私は通常、次のようなものを使用します。

import os
TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(__file__), '..','templates'), # django 1.4
    os.path.join(os.path.dirname(__file__), 'templates'), # django 1.3
)

または、インストールされているアプリにテンプレート ディレクトリを作成して、テンプレート ファイルを配置することもできます (django.template.loaders.app_directories.Loader を使用)。

于 2012-07-06T08:39:37.080 に答える