Thẻ mẫu sẵn có để hiển thị năm nay một cách linh hoạt. Giống như "2011", thẻ mẫu sẽ hiển thị cái gì?
Thẻ mẫu sẵn có để hiển thị năm nay một cách linh hoạt. Giống như "2011", thẻ mẫu sẽ hiển thị cái gì?
Câu trả lời:
Thẻ đầy đủ để in chỉ năm hiện tại là {% now "Y" %}
. Lưu ý rằng chữ Y phải nằm trong dấu ngoặc kép.
Y
phải được trích dẫn như trong câu trả lời của Cabishek.
F
thay vìM
Tôi đã sử dụng thông tin sau trong trang web dựa trên Django của mình http://pmtboyshostelraipur.pythonanywhere.com/ hoạt động tốt như mong đợi (Có thể, khi bạn đọc bài đăng này, nó sẽ ngừng hoạt động vì đó là một dịch vụ lưu trữ miễn phí nên chỉ cần lưu trữ miễn phí thử mã và xem).
{% now 'Y' %}
Bạn có thể truy cập và xem nó trong phần chân trang nơi tôi đã hiển thị năm hiện tại bằng cách sử dụng mã dưới đây (phần CSS bị bỏ qua vì vậy hãy sử dụng phần của riêng bạn).
<footer class="container-fluid" id="footer">
<center>
<p>
©
{% now 'Y' %},
PMT Boys hostel <br>
All rights reserved
</p>
</center>
</footer>
Và nó đang hiển thị văn bản trung tâm sau trong phần chân trang web của tôi.
©2018, PMT Boys hostel
All rights reserved
Trong mẫu của tôi, ngoài năm hiện tại, tôi cần thả xuống năm hết hạn thẻ tín dụng với 20 giá trị (bắt đầu từ năm hiện tại). Các select
giá trị cần có là 2 chữ số và chuỗi hiển thị 4 chữ số. Để tránh mã mẫu phức tạp, tôi đã viết thẻ mẫu đơn giản này:
@register.filter
def add_current_year(int_value, digits=4):
if digits == 2:
return '%02d' % (int_value + datetime.datetime.now().year - 2000)
return '%d' % (int_value + datetime.datetime.now().year)
Và sử dụng nó theo cách sau:
<select name="card_exp_year">
{% for i in 'iiiiiiiiiiiiiiiiiiii' %}
<option value="{{ forloop.counter0|add_current_year:2 }}">{{ forloop.counter0|add_current_year:4 }}</option>
{% endfor %}
</select>