只需开始我的python/django体验,我就有问题:-)

所以我有一个模型。

from django.db import models

class Priority(models.Model):
    name = models.CharField(max_length=100)

class Projects(models.Model):
    name = models.CharField(max_length=30)
    description = models.CharField(max_length=150)
    priority = models.ForeignKey(Priority)

class Tasks(models.Model):
    name = models.CharField(max_length=30)
    description = models.CharField(max_length=40)
    priority = models.ForeignKey(Priority)

在优先级表中,我计划存储1.高,2.medium,3.和在任务表优先级之类的数据,将存储为ID(1、2或3)

问题是如何编写显示我所有任务但优先级的视图?例如:

name: Task 1

description: Description 1

priority: **High**
有帮助吗?

解决方案

您的观点不必做太多。

tasks = Tasks.objects.all()

将此提供给您的模板。

然后,您的模板可以执行以下操作。

{% for t in tasks %}
    name: {{t.name}}
    description: {{t.description}}
    priority: **{{t.priority.name}}**
{% endfor %}

其他提示

有很多方法可以实现您的需求。最简单的是将数字字典保留为字符串。像这样:1->高,2->中等,3->高。

将此字典保留在视图功能之外,以便您可以从需要获得优先级的任何视图功能中访问它。

您还可以简单地编写一个确定在模板中显示的开关。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top