Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
106 views
in Technique[技术] by (71.8m points)

How to exclude an item in Django loop?

Hopefully just a quick question. I am having some difficulty wrapping my mind around to using Django loop function. I have a simple page which is fetch some data from db. Everything seems fine although loop function melting my mind.

Simply my loop:

{% if books %}
{% for reader in books %}
{{ reader.title }}
{{ reader.booknumber|default_if_none:"" }}
 {% endfor %}
{% else %}

My result like:

Elena 141
Elena
M.Mary 1035 
P.Paul 141
P.Paul 
T.Mark 741
T.Mark 
T.Mark

My Expect result like:

Elena 141
M.Mary 1035 
P.Paul 141
T.Mark 741

Thats because some of booknumber cell is emtpy in my db. I just wonder how do i put them out of loop? I'm using defult_if_none func for hide "None" but didnt find a way for hidingexcluding title (if doesnt have booknumber). I really appreciate if someone could help me out. Thank you in advance.

question from:https://stackoverflow.com/questions/65842346/how-to-exclude-an-item-in-django-loop

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

try this

{% if books %}
   {% for reader in books %}
      {% if reader.title and reader.booknumber %}
         {{ reader.title }}
        {{ reader.booknumber|default_if_none:"" }}
      {% endif %}
    {% endfor %}  
{% endif %}

More about Django templates

https://docs.djangoproject.com/en/3.1/ref/templates/builtins/


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...