Python 如何根据单元格值设置表格数据的不同样式?

Python 如何根据单元格值设置表格数据的不同样式?,python,django,Python,Django,我是django的新手,我尝试根据单元格数据的值对其进行样式化,但不起作用。 StatusPorumbei模型存储了许多对象,对于每个值,我需要另一个badge类。如何在StatusPorumbei中获取每个值并将其分配给其他类?首先是模型,其次是模板,最后是视图函数 class StatusPorumbei(models.Model): status = models.CharField(max_length=25, null=False, blank=False, unique=Tr

我是django的新手,我尝试根据单元格数据的值对其进行样式化,但不起作用。 StatusPorumbei模型存储了许多对象,对于每个值,我需要另一个badge类。如何在StatusPorumbei中获取每个值并将其分配给其他类?首先是模型,其次是模板,最后是视图函数

class StatusPorumbei(models.Model):
    status = models.CharField(max_length=25, null=False, blank=False, unique=True)

    def __str__(self):
        return self.status

class Meta:
    verbose_name = "Status"
    verbose_name_plural = "Statusuri"
    ordering = ['status']

class Porumbei(models.Model):

    id_porumbel = models.AutoField(primary_key=True)

    serie_inel = models.CharField(max_length=25, null=False, blank=False, unique=True)

    anul = models.CharField(max_length=4, null=False, blank=False)

    culoare = models.ForeignKey(CuloriPorumbei, on_delete=models.CASCADE, null=False, blank=False)

    culoare_ochi = models.ForeignKey(CuloriOchi, on_delete=models.CASCADE, null=False, blank=False)

    sex = models.ForeignKey(Gender, on_delete=models.CASCADE)

    ecloziune = models.DateField(null=True, blank=True)

    rasa = models.CharField(max_length=50, null=True, blank=True)

    linie = models.CharField(max_length=50, null=True, blank=True)

    nume = models.CharField(max_length=50, null=True, blank=True)

    tata = models.CharField(max_length=25, null=True, blank=True)

    mama = models.CharField(max_length=25, null=True, blank=True)

    compartiment = models.ForeignKey(Compartimente, on_delete=models.CASCADE, null=False, blank=False)

    status = models.ForeignKey(StatusPorumbei, on_delete=models.CASCADE, null=False, blank=False)

<tbody>
    {% for item in items %}
        <tr class="table-active">
            <td>{{ item.serie_inel }}</td>
            <td>{{ item.anul }}</td>
            <td>{{ item.culoare }}</td>
            <td>{{ item.sex }}</td>
            <td>{{ item.compartiment }}</td>
            <td>{{ item.tata }}</td>
            <td>{{ item.mama }}</td>
    {% if item.status in sts %}
        {% if "Activ" %}
            <td><span class="badge badge-success">{{ item.status }}</span></td>
        {% elif "Reproducător" %}
            <td><span class="badge badge-indigo">{{ item.status }}</span></td>
        {% endif %}
    {% endif %}
        <td>
            <a href="#" class="mr-25" data-toggle="tooltip" data-original-title="Editare">
            <i class="icon-pencil"></i> </a>
        </td>
        </tr>
    {% endfor %}
</tbody>

def dashboard(request):
items = Porumbei.objects.all()
sts = StatusPorumbei.objects.all()
context = {
    'items' : items,
    'sts' : sts
}
template = loader.get_template("dashboard.html")
return HttpResponse(template.render(context, request))
类别状态Porumbei(models.Model):
status=models.CharField(最大长度=25,null=False,blank=False,unique=True)
定义(自我):
返回自我状态
类元:
详细名称=“状态”
详细名称复数=“Statusuri”
排序=['status']
Porumbei类(models.Model):
id\u porumbel=models.AutoField(主键=True)
serie_inel=models.CharField(最大长度=25,null=False,blank=False,unique=True)
anul=models.CharField(最大长度=4,null=False,blank=False)
culoare=models.ForeignKey(CuloriPorumbei,on_delete=models.CASCADE,null=False,blank=False)
CuloriOchi=models.ForeignKey(CuloriOchi,on\u delete=models.CASCADE,null=False,blank=False)
sex=models.ForeignKey(性别,on_delete=models.CASCADE)
ecloziune=models.DateField(null=True,blank=True)
rasa=models.CharField(最大长度=50,null=True,blank=True)
linie=models.CharField(最大长度=50,null=True,blank=True)
nume=models.CharField(最大长度=50,null=True,blank=True)
tata=models.CharField(最大长度=25,null=True,blank=True)
mama=models.CharField(最大长度=25,null=True,blank=True)
compartiment=models.ForeignKey(Compartimente,on_delete=models.CASCADE,null=False,blank=False)
status=models.ForeignKey(StatusPorumbei,on_delete=models.CASCADE,null=False,blank=False)
{items%%中的项的%s}
{{item.serie_inel}}
{{item.anul}
{{item.culoare}}
{{item.sex}
{{item.compartiment}}
{{item.tata}
{{item.mama}
{%if item.status在sts%}
{%if“Activ”%}
{{item.status}
{%elif“复制者”%}
{{item.status}
{%endif%}
{%endif%}
{%endfor%}
def仪表板(请求):
items=Porumbei.objects.all()
sts=StatusPorumbei.objects.all()
上下文={
“项目”:项目,
‘sts’:sts
}
template=loader.get_模板(“dashboard.html”)
返回HttpResponse(template.render(上下文,请求))

查询
项目状态

    {% if  item.status.status == "Activ" %}
        <td><span class="badge badge-success">{{ item.status }}</span></td>
    {% elif  item.status.status == "Reproducător" %}
        <td><span class="badge badge-indigo">{{ item.status }}</span></td>
    {% else %}
        <td><span>{{ item.status.status }}</span></td>
    {% endif %}
{%if item.status.status==“Activ”%}
{{item.status}
{%elif item.status.status==“复制者”%}
{{item.status}
{%else%}
{{item.status.status}
{%endif%}

我尝试过这个方法,但没有显示状态列。然后它不等于这两个值中的任何一个。在上面进行了编辑,以包含
{%else%}
,并使用
CharField
而不是对象