Django html расширяет теги - PullRequest
0 голосов
/ 22 апреля 2020

Это моя база. html

<!doctype html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">


  </head>
  <body>

    {% block content %}{% endblock content %}


  </body>
</html>

Это домашняя страница, на которой я использую базу {% extends '. html'%}

{% load static %}


{% block content %}

  <div class="container">
    <h1>{{ title }}</h1>
    <h1>Hello, world!</h1>

    <img src="{% static 'img/myImage.jpg' %}" class='img-fluid'>

  </div>

  {% if premium_content %}
  <div class="row">
    <div class="col">
      <h1>Premium</h1>
      {{ premium_content }}

    </div>
    {% endif %}
  </div>


{% endblock content %}

вот мой views.py, где у меня есть home_page, и перед использованием тега extends я мог бы правильно отобразить эту страницу

def home_page(request):
    context = {

        "title":"Hello World We Working"

    }
    if request.user.is_authenticated:
        context["premium_content"] = 'Only premium users see this'

    return render(request, 'MainApp/home_page.html', context)

Я получаю сообщение об ошибке TemplateDoesNotExist at / Что я даже не понимаю, даже попытался поместить два html файла в один и тот же каталог, но все равно я получаю одно и то же сообщение об ошибке

1 Ответ

1 голос
/ 22 апреля 2020

Вам следует создать файл шаблонов в каталоге вашего проекта или приложения и обновить переменную TEMPLATES в файле settings.py, как показано ниже:

TEMPLATES = [
    {
       ...

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

       ...

    },
]

И затем поместить файлы HTML в каталог шаблонов. Надеюсь, это работает для вас

...