세 가지 모델/테이블에 걸쳐“조인”에 Python/Django보기 작성

StackOverflow https://stackoverflow.com/questions/1300657

  •  18-09-2019
  •  | 
  •  

문제

내 파이썬/django 경험을 시작하면 문제가 있습니다 :-)

그래서 나는 다음과 같은 model.py를 가지고 있습니다.

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.high, 2.medium, 3.low 및 작업 테이블 우선 순위와 같은 데이터를 저장할 계획입니다 (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