【问题标题】:Django model filtering(query)Django 模型过滤(查询)
【发布时间】:2018-09-01 02:21:56
【问题描述】:

我正在为模型过滤而苦苦挣扎,我做错了什么?这是我的代码:

models.py

class Images(models.Model):
    TAK_NIE = (
        ('y', 'Tak'),
        ('n', 'Nie')
    )
    nazwa_polska = models.ForeignKey(Roslina, related_name='images', on_delete=models.CASCADE)
    image = models.ImageField(max_length=255, upload_to=generate_filename)
    zdjecie_glowne = models.CharField(max_length=1,choices=TAK_NIE,default='n')
    def czyGlowne(self):
        return self.filter(zdjecie_glowne='y')
    def __str__(self):
        return self.nazwa_polska.nazwa_polska

html 不工作:

{% for zdjecie in ros.images.czyGlowne %}
   {{ zdjecie.image }}
   <img src="{% static '' %}{{ zdjecie.image|cut:"static/"}}" alt="brak 
   zdjecia" class="img-thumbnail zdjecia">
{% endfor %}

在同一页面上工作的 html 代码:

{% for zdjecie in ros.images.all %}
    <div class="col-lg-4">
       <img src="{% static '' %}{{ zdjecie.image|cut:"static/"}}" alt="brak 
       zdjecia" class="img-thumbnail zdjecia">
    </div>
{% endfor %}

【问题讨论】:

  • 发表你的观点,过滤器应该在那里
  • 传入模板的“ros”是什么

标签: django templates filter model


【解决方案1】:

您的视图应该正在过滤或创建过滤后的查询集。

你也可以这样过滤:

{% for zdjecie in ros.images.all %}
(% if zdjecie.zdjecie_glowne == 'y' %}
   {{ zdjecie.image }}
   <img src="{% static '' %}{{ zdjecie.image|cut:"static/"}}" alt="brak 
   zdjecia" class="img-thumbnail zdjecia">
{% endif %}
{% endfor %}

【讨论】:

    猜你喜欢
    • 2015-07-16
    • 2011-01-17
    • 2021-08-05
    • 2016-11-22
    • 1970-01-01
    • 2021-09-27
    • 2023-04-11
    • 1970-01-01
    • 2018-12-30
    相关资源
    最近更新 更多