본문 바로가기

Python_WEB/Try_Django

[Django]Stay DRY with Templates

반응형

CodingEntrepreneurs Django 강의 정리

{% extends "기초 HTML" %}>

1. 중복을 방지

 

2. 한 뭉치의 block들이 정의된 ‘base’라는 템플릿을 먼저 로드하고 뒤따르는 block들로 이 block들을 채운다.

 

3. 단일 파일(기본 템플릿)을 변경하여 사이트 재설계를 수행

 

{% block 변수명 %} {% endblock %}>

1. 하위 템플릿으로 재정의할 수 있는 블록을 정의

 

2. 중복을 방지

 

base.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">

    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css"
        integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">

    <title>{% block head_title %} Replace this value {% endblock %} CFE</title>
</head>

<body>
    <div class="container">
        <div class="row">
            <div class="col-6 mx-auto">
                <h1>{{ title }}</h1>
                {% block content %}
                Replace this value
                {% endblock %}
            </div>
        </div>
    </div>


    <!-- Optional JavaScript -->
    <!-- jQuery first, then Popper.js, then Bootstrap JS -->
    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"
        integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj"
        crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
        integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
        crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"
        integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI"
        crossorigin="anonymous"></script>
</body>

</html>

 

about.html>

{% extends "base.html" %}

{% block head_title %}
About Us
{% endblock %}

{% block contelnt %}
<p>This is more about stuff {{ title }}</p>
{% endblock %}

 

적용 스크린샷>

반응형

'Python_WEB > Try_Django' 카테고리의 다른 글

[Django]Template Context Processors  (0) 2020.06.14
[Django]Rendering Any Kind of Template  (0) 2020.06.14
[Django]Render Context in Templates  (0) 2020.06.13
[Django]Add Bootstrap  (0) 2020.06.13
[Django]Loading a HTML Template  (0) 2020.06.13