私は組織とイベントの間に多対1の関係があります。 1つの組織は多くのイベントを持つことができます。私は、すべての人が街でフィルタリングして見ることができるすべてのイベントを表示するためのテンプレートを用意しています。しかし、私は組織の詳細ビューに特定の組織だけに属するイベントを表示したい。Djangoテンプレートタグはスラッグでフィルタリングします
models.py私は都市(この1のためのNY)でイベントをフィルタリングするために、このテンプレートタグを使用し
class Organization(models.Model):
name = models.Charfield(max_length=27)
slug = models.SlugField(max_length=25, null=True, blank=True)
[...]
def __unicode__(self):
return self.name
class Events(models.Model):
org = models.ForeignKey(Organization, on_delete=models.CASCADE, default=1)
time = models.DateTimeField(null=True, blank=True)
city = models.CharField(
max_length=25,
choices = CITY_CHOICES,
default = 'NY'
)
[...]
def __unicode__(self):
return '%s %s' % (self.org, self.time)
:
@register.inclusion_tag('mysite/event_list.html')
def event_ny_tag(event):
return {'events': Events.objects.filter(linn='NY')}
url.py
しかし、どのように特定の組織のイベントだけをフィルタリングできますか?たった2つの都市があり、20の組織しかありません。どのようにそれをハードコーディングせずに行うのですか?スラッグと?
これはコピー貼り付けではありません。私のようなサンプルコード。
は、私はあなたが欲しいものだと思うのテンプレートでこれを行うには、HTTPSです://行いますcs.djangoproject.com/en/1.11/topics/db/queries/#following-relationships-backward –