我通用的DetailView:动态筛选PK中查询集
class CircularDetail(DeleteView):
model = Circular
template_name = 'genre/circular_detail.html'
def get_context_data(self, **kwargs):
ctx = super(CircularDetail, self).get_context_data(**kwargs)
ctx['c'] = Circular.objects.get(pk=1)
ctx['sittings'] = Sitting.objects.all()
return ctx
我的圆形模式:
class Circular(models.Model):
cir_no = models.IntegerField(blank=False)
sit_start_date = models.DateField(blank=False)
sit_end_date = models.DateField(blank=False)
sess_no = models.ForeignKey(Session,
on_delete=models.CASCADE)
parl_no = models.ForeignKey(Parliament,
on_delete=models.CASCADE)
class Meta:
unique_together = ('cir_no', 'sess_no',)
这只能说明当PK = 1,但我想动态分配的PK值,这样,当我选择了不同的pk会给出相应的数据。
我怎么能动态分配的PK值?
假设的观点实际上是基于DetailView,而不是DeleteVie w,你想要的是它自动执行的操作;删除'c'的定义,只需访问模板中的'object'。 –
我不清楚你的回复。如果我删除c会在那里。目前pk = 1是否只返回循环号1而不是其他号。我想通告第2,3,等等 – ohid
一个的DetailView的全部意义在于,它已经是负责与填充与PK相关联的对象模板上下文。正如我所说,它是以“物体”的形式出现的。 –