我是Django的新手。我有两个表StatusTable
和SystemTable
,其中SystemTable有一个外来列“Status”,其中存储StatusTable状态的id。数据保存是按预期工作正常。我需要在Statuspage中显示系统的Statusname,但我只获得存储在SystemTable中的状态的id。
的 Models.py
class StatusTable(models.Model):
status_name = models.CharField(max_length=20,default='')
def __str__(self):
return self.status
class SystemTable(models.Model):
sid = models.CharField(max_length=3)
status = models.ForeignKey(StatusTable,null=True)
Viwes.py
def systemstatuspage(request):
form = CreateTaskMaster()
task_title = SystemTable.objects.all()
my_list = [ model_to_dict(x) for x in task_title]
return render(request, 'task/task.html', {'form': form, 'sid':my_list})
答案 0 :(得分:0)
无需手动将查询集转换为列表,您可以在模板中循环查询集。
def systemstatuspage(request):
form = CreateTaskMaster()
tasks = SystemTable.objects.all()
# remove this line
# my_list = [ model_to_dict(x) for x in task_title]
return render(request, 'task/task.html', {'form': form, 's_ids':tasks})
在模板中你可以使用外键关系
{% for s in s_ids %}
{{s.status.status_name}}
{% endfor %}