2016-01-28 20 views
5

Tôi đang đối mặt với vấn đề rất lạ hôm nay. Tôi nhận được TemplateDoesNotExist (xem hình ảnh đầu tiên) nhưng khi tôi cố gắng gỡ lỗi nguồn mẫu với debug-toolbar nó hiển thị chính xác đường dẫn mẫu (xem hình 2) Thêm kỳ lạ, khi tôi nhấp vào nút mẫu cụ thể, nó sẽ hiển thị chính xác nguồn mẫu .nhận được lỗi TemplateDoesNotExist trong django 1.9

Đây là lần đầu tiên tôi đối mặt với các vấn đề như vậy. Ai đó có thể vui lòng giải thích tại sao tôi nhận được lỗi này.

EDIT: Thêm tập tin settings.py (phần relavant)

SETTINGS_PATH = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 

TEMPLATES = [ 
{ 
    'BACKEND': 'django.template.backends.django.DjangoTemplates', 
    'DIRS': [os.path.join(SETTINGS_PATH, 'templates')], 
    'APP_DIRS': True, 
    'OPTIONS': { 
     'context_processors': [ 
      'django.template.context_processors.debug', 
      'django.template.context_processors.request', 
      'django.contrib.auth.context_processors.auth', 
      'django.contrib.messages.context_processors.messages', 
     ], 
    }, 
}, 

]

Cảm ơn

enter image description here

enter image description here)

+0

Thay vì đăng khó đọc hình ảnh văn bản, * đăng văn bản thực tế * ... cùng với thông tin cần thiết để tạo lại lỗi – Sayse

+0

Tôi chỉ muốn hiểu lý do tại sao tôi nhận được ngoại lệ TemplateDoesNotExist ngay cả khi mẫu tồn tại trên đường dẫn ? Kiểm tra hình ảnh thứ 2 khi tôi nhấp vào "Mẫu" trên thanh công cụ gỡ lỗi .. (bên phải) ... Xin hãy giúp tôi hiểu vấn đề ... Tôi bị kẹt trong thời gian rất dài – user3265443

+0

Bạn nên bao gồm bất kỳ phần hữu ích nào của dấu vết từ ngoại lệ. – Jmills

Trả lời

13

tôi đã có vấn đề tương tự với Django 1.9. Tôi vừa thay đổi DIRS trong TEMPLATES của tệp settings.py.

Hãy thử điều này

'DIRS': [os.path.join(BASE_DIR,'templates')], 

Thay vì bạn

'DIRS':[os.path.join(SETTINGS_PATH,'templates')], 

Hãy thử mã này thay vì MẪU bạn

TEMPLATES = [ 
{ 
    'BACKEND': 'django.template.backends.django.DjangoTemplates', 
    'DIRS': [os.path.join(BASE_DIR,'templates')], 
    'APP_DIRS': True, 
    'OPTIONS': { 
     'context_processors': [ 
      'django.template.context_processors.debug', 
      'django.template.context_processors.request', 
      'django.contrib.auth.context_processors.auth', 
      'django.contrib.messages.context_processors.messages', 

     ], 
    }, 
},] 
4

tôi nâng cấp lên 1.9 hôm nay và đột nhiên có cùng một vấn đề . Đối với tôi có vẻ như thêm "'APP_DIRS': True", cho các mẫu hiện các trick (tôi toggled một vài lần bằng cách thêm/xóa này và nó hoạt động/thất bại).

Vì vậy, APP_DIRS làm gì: nếu tôi hiểu tài liệu (https://docs.djangoproject.com/en/1.9/ref/templates/api/) chính xác nó đọc các mẫu Django mặc định nếu True. Về cơ bản, cho 95% của tất cả các dự án này nên được các trường hợp.

Các vấn đề liên quan