Django的flatpages應用程序有一個衆所周知的和經常討論的網絡上的缺陷,涉及到缺少404.html「Page Not Found 「模板在您的項目的模板目錄中。如果在settings.py文件中有DEBUG = False,並且缺少404.html文件,則flatpages將生成500服務器錯誤,而不是加載flatpage,因爲該項目嘗試查找404.html模板,而生成500是因爲它不在那裏。Django 1.1 beta 1 - Flatpages Error,Debug = False,with 404.html
我的問題與此不同。我在我的模板目錄中有一個404.html,鉤到了我的項目中,中間件連接起來了,SITE_ID對於每個flatpage都是正確的,並且存在templates/flatpages/default.html文件。
當我嘗試加載任何flatpage時,我將自定義的404.html錯誤頁面返回給我。所以,404模板正在工作,但flatpage中間件似乎沒有檢查flatpage模型中的URL,然後再回到404上。
是否有其他人遇到過這種情況和/或是否找到了解決方案?這是一個測試版,所以當我輸入時可能是一個解決方案。我使用Django 1.1測試版1
這裏是我的整個MIDDLEWARE_CLASSES:
MIDDLEWARE_CLASSES =( 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware', 'djangodblog.DBLogMiddleware', 'ecomstore.SSLMiddleware.SSLRedirect', 「ecomstore.marketing.urlcanon。 URLCanonicalizationMiddleware', 'django.contrib.redirects.middleware.Redirec tFallbackMiddleware', )
你能發佈完整的MIDDLEWARE_CLASSES設置嗎? – 2009-06-16 11:24:35