1

私のPython/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 などのデータを保存する予定で、Tasks テーブルでは優先度が ID (1、2、または 3) として保存されます。

そして問題は、すべてのタスクを表示するビューを作成する方法ですが、優先度という名前が付いていますか? 例えば:

name: Task 1

description: Description 1

priority: **High**
4

2 に答える 2

2

あなたの見解は多くのことをする必要はありません。

tasks = Tasks.objects.all()

これをテンプレートに提供します。

テンプレートは、次のようなことを行うことができます。

{% for t in tasks %}
    name: {{t.name}}
    description: {{t.description}}
    priority: **{{t.priority.name}}**
{% endfor %}
于 2009-08-19T15:37:20.347 に答える
0

必要なことを達成する方法はたくさんあります。最も簡単な方法の1つは、数字から文字列までの辞書を保持することです。このように:1->高、2->中、3->高。

このディクショナリをビュー関数の外に置いて、優先順位を取得する必要のある任意のビュー関数からアクセスできるようにします。

テンプレートに何を表示するかを決定するスイッチを作成することもできます。

于 2009-08-19T15:27:21.970 に答える