Trong phần này chúng ta sẽ tìm hiểu cách sử dụng các file tĩnh.
Ngoài nội dung HTML được sinh ra bởi server thì một ứng dụng web còn cần đến các file bổ sung khác, chẳng hạn như các file hình ảnh, Javascript, CSS… Trong Django thì các file này được gọi là file tĩnh.
Module django.contrib.staticfiles
được liệt kê trong biến INSTALLED_APP
(trong file mysite/settings.py
) sẽ quản lý các file tĩnh này.
Tùy biến CSS
Đầu tiên chúng ta tạo một thư mục có tên là static
trong thư mục polls
. Django sẽ tự động tìm các file tĩnh trong thư mục này giống như tìm các file template trong thư mục polls/templates
vậy.
Trong thư mục static
này chúng ta lại tạo một thư mục khác với tên là polls
và tạo một file CSS có tên là style.css
.
li a { color: green }
Trong file này chúng ta chỉ đơn giản là thiết lập màu chữ cho các thẻ li và a.
Tiếp theo chúng ta cần sửa lại file index.html
một tí.
{% load staticfiles %} <link rel="stylesheet" type="text/css" href="{% static 'polls/style.css' %}" />
Dòng {% load staticfiles %}
sẽ tự động gán đường dẫn đến thư mục mysite/polls/static/
vào một biến có tên static
do Django tự đặt, từ đó bạn chỉ cần lấy biến static
là có thể lấy được đường dẫn tuyệt đối đến thư mục này.
<link rel="stylesheet" type="text/css" href="{% static 'polls/style.css' %}" />
Sau đó chúng ta chỉ cần lấy biến static
trong cặp thẻ {% %}
ra và gắn thêm đường dẫn đến các file css, js… của bạn.