开发者

How to access array elements in a Django template?

开发者 https://www.devze.com 2022-12-10 17:54 出处:网络
I am getting an array arr passed to my Django template. I want to access individual elements of the array in the array (e.g. arr[0], arr[1]开发者_开发知识库) etc. instead of looping through the whole

I am getting an array arr passed to my Django template. I want to access individual elements of the array in the array (e.g. arr[0], arr[1]开发者_开发知识库) etc. instead of looping through the whole array.

Is there a way to do that in a Django template?


Remember that the dot notation in a Django template is used for four different notations in Python. In a template, foo.bar can mean any of:

foo[bar]       # dictionary lookup
foo.bar        # attribute lookup
foo.bar()      # method call
foo[bar]       # list-index lookup

It tries them in this order until it finds a match. So foo.3 will get you your list index because your object isn't a dict with 3 as a key, doesn't have an attribute named 3, and doesn't have a method named 3.


arr.0
arr.1

etc.


You can access sequence elements with arr.0, arr.1 and so on. See The Django template system chapter of the django book for more information.


When you render a request to context some information, for example:

return render(request, 'path to template', {'username' :username, 'email' :email})

You can access to it on template, for variables

{% if username %}{{ username }}{% endif %}

for arrays

{% if username %}{{ username.1 }}{% endif %}
{% if username %}{{ username.2 }}{% endif %}

you can also name array objects in views.py and then use it as shown below:

{% if username %}{{ username.first }}{% endif %}
0

精彩评论

暂无评论...
验证码 换一张
取 消