2011-01-19 22 views

Trả lời

49

Cảm ơn tất cả mọi người dành cho bạn giúp đỡ, nó dẫn m e để nhận ra rằng tôi có thể sử dụng with tag.

{% with list|last as last %} 
    {{ last.key }} 
{% endwith %} 
+0

Cũng hoạt động với slice nếu bạn muốn một cái gì đó khác với phần tử cuối cùng: '{% with list | slice:": - 2 "là my_var%}' – Jake

+3

Lỗi: Chỉ mục phủ định không được hỗ trợ. Django v.1.7 –

+0

hiện nó hoạt động trong jinja2? –

1
+0

Có cách nào để có những kết quả của lát và lấy chìa khóa? – Jake

+0

Ah ha! Có, có, với thẻ! – Jake

-3

Sử dụng đoạn mã này trong mẫu của bạn:

{{ list|slice:":-1".items.0.0 }} 
+2

'{{list | slice:": - 1 ".key}}' => 'Không thể phân tích phần còn lại: '.key' từ 'danh sách | slice:": - 1 ".key'' – Jake

+0

Sử dụng mã từ câu trả lời sửa đổi. – ikostia

+1

Không thể phân tích phần còn lại: '.items.0.0' từ 'danh sách | slice: ": - 1" .items.0.0' – Jake

23

Sử dụng last mẫu thẻ:

{{ value|last }} 

If value is the list ['a', 'b', 'c', 'd'] , the output will be the string "d" .

+1

'{{list | last.key}}' => 'Không thể phân tích phần còn lại: '.key' từ 'list | last.key'' – Jake

+1

Tôi dành nửa giờ để tìm kiếm điều này. Cảm ơn! FYI điều này có vẻ là cách duy nhất để có được phần tử cuối cùng của một đối tượng xrange trong Python 2. bộ lọc 'make_list' và' slice' và các kết hợp của chúng đều thất bại vì các lý do khác nhau. – makaveli

5

Trong trường hợp của tôi, tôi tìm thấy giải pháp này: {{object_list.last.id}} rất hữu ích trên biểu hiện như thế này: {% url 'my-url' object_list.first.id object_list.last.id %}

0

mà không có, sẽ là:

{% set last = list|last %} 
{{ last.key }} 
Các vấn đề liên quan