Tiêu đề cho từng trang
Thuộc phần Kiến thức cơ bản về Django trong hành trình Django của Coddy. Bài học 18 trên 23.
Vì /drinks/ kế thừa base.html, tiêu đề của trang là Corner Café, giống như trang chủ. Một khối có thể khắc phục điều đó vì khối có thể chứa nội dung mặc định. Trang điền nội dung vào khối sẽ thay thế nội dung mặc định; trang bỏ qua khối sẽ giữ nguyên nội dung đó.
<h1>{% block heading %}City Library{% endblock %}</h1>
<article>{% block body %}{% endblock %}</article>Một khung có thể có nhiều khối tùy nhu cầu, mỗi khối có tên riêng. Trang này điền nội dung vào cả hai khối:
{% extends "library/base.html" %}
{% block heading %}Opening Times{% endblock %}
{% block body %}<p>Until 20:00.</p>{% endblock %}Trang chỉ điền nội dung vào body sẽ giữ nguyên tiêu đề City Library.
Thử thách
DễĐặt tiêu đề riêng cho từng trang.
- Trong
base.html, biến phần văn bản tiêu đề thành một khối têntitle, vớiCorner Cafélàm mặc định. - Trong
drinks.html, đặt tiêu đề cho/drinks/làOur Drinks | Corner Café. Trang chủ vẫn giữ tiêu đề mặc định.
Mở /drinks/: thanh tiêu đề hiển thị Our Drinks | Corner Café.
Tự làm thử
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Corner Café</title>
</head>
<body>
<nav>
<a href="{% url 'menu:home' %}">Home</a>
<a href="{% url 'menu:drinks' %}">Drinks</a>
<a href="{% url 'menu:about' %}">About</a>
</nav>
<main>
{% block content %}{% endblock %}
</main>
</body>
</html>
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức cơ bản về Django
Tự luyện tập: Playground Django