@dert2313

По какой причине django может не видеть шаблон, расположенный в верной папке?

Django tried loading these templates, in this order:

Using engine django:

django.template.loaders.app_directories.Loader: b:\learning_log\learning_logs\templates\users\register.html (Source does not exist)
django.template.loaders.app_directories.Loader: b:\learning_log\users\templates\users\register.html (Source does not exist)
django.template.loaders.app_directories.Loader: B:\learning_log\ll_env\lib\site-packages\django\contrib\admin\templates\users\register.html (Source does not exist)
django.template.loaders.app_directories.Loader: B:\learning_log\ll_env\lib\site-packages\django\contrib\auth\templates\users\register.html (Source does not exist)


Traceback (most recent call last):
  File "B:\learning_log\ll_env\lib\site-packages\django\core\handlers\exception.py", line 34, in inner
    response = get_response(request)
  File "B:\learning_log\ll_env\lib\site-packages\django\core\handlers\base.py", line 115, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "B:\learning_log\ll_env\lib\site-packages\django\core\handlers\base.py", line 113, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "b:\learning_log\users\views.py", line 24, in register
    return render(request, 'users/register.html', context)
  File "B:\learning_log\ll_env\lib\site-packages\django\shortcuts.py", line 19, in render
    content = loader.render_to_string(template_name, context, request, using=using)
  File "B:\learning_log\ll_env\lib\site-packages\django\template\loader.py", line 61, in render_to_string
    template = get_template(template_name, using=using)
  File "B:\learning_log\ll_env\lib\site-packages\django\template\loader.py", line 19, in get_template
    raise TemplateDoesNotExist(template_name, chain=chain)
django.template.exceptions.TemplateDoesNotExist: users/register.html
[27/Apr/2020 19:21:40] "GET /users/register/ HTTP/1.1" 500 80525
[27/Apr/2020 19:37:26] "GET /topics/ HTTP/1.1" 200 434
[27/Apr/2020 19:37:29] "GET /users/login/ HTTP/1.1" 200 835
[27/Apr/2020 19:37:31] "POST /users/login/ HTTP/1.1" 302 0
[27/Apr/2020 19:37:31] "GET / HTTP/1.1" 200 238
[27/Apr/2020 19:37:32] "GET /topics/ HTTP/1.1" 200 396
[27/Apr/2020 19:37:33] "GET / HTTP/1.1" 200 238
[27/Apr/2020 19:37:51] "GET /users/logout/ HTTP/1.1" 200 319
Internal Server Error: /users/register/
Traceback (most recent call last):
  File "B:\learning_log\ll_env\lib\site-packages\django\core\handlers\exception.py", line 34, in inner
    response = get_response(request)
  File "B:\learning_log\ll_env\lib\site-packages\django\core\handlers\base.py", line 115, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "B:\learning_log\ll_env\lib\site-packages\django\core\handlers\base.py", line 113, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "b:\learning_log\users\views.py", line 24, in register
    return render(request, 'users/register.html', context)
  File "B:\learning_log\ll_env\lib\site-packages\django\shortcuts.py", line 19, in render
    content = loader.render_to_string(template_name, context, request, using=using)
  File "B:\learning_log\ll_env\lib\site-packages\django\template\loader.py", line 61, in render_to_string
    template = get_template(template_name, using=using)
  File "B:\learning_log\ll_env\lib\site-packages\django\template\loader.py", line 19, in get_template
    raise TemplateDoesNotExist(template_name, chain=chain)
django.template.exceptions.TemplateDoesNotExist: users/register.html
  • Вопрос задан
  • 1293 просмотра
Решения вопроса 1
tumbler
@tumbler Куратор тега Django
бекенд-разработчик на python
А попробуйте слеш развернуть в другую сторону
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Ra333
Это просто Мэтиз мудак, допустил кучу опечаток в коде - в своей книге. Но у с другой стороны по многим неработающим кускам кода из книги мне пришлось много и упорно гуглить, зато запомнил навсегда. Может это такой авторский ход)
Ответ написан
@Masloves
Если пользуетесь книгой издательства Питер то у них опечатка.
В файлике users/views.py у "Питера" последняя строчка выглядит так:

return render(request, 'users/register.html', context)

А в оригинале она выглядит следующим образом:

return render(request, 'registration/register.html', context)

После указания правильного пути все файлики функционируют.

P.S.: Лучше всегда держать оригинал под рукой ;)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы