Мой общий DetailView:Динамически фильтр рк в QuerySet
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',)
Это только показывает, когда рк = 1, но я хочу, чтобы присвоить значения рк динамически, так что, когда я выбрал другой pk дает соответствующие данные.
Как назначить значения pk динамически?
Предполагая, что вид на самом деле на основе DetailView, а не DeleteVie w, то, что вы хотите, это то, что он делает автоматически; удалите свое определение 'c' и просто получите доступ к объекту в шаблоне. –
Не знаю, из вашего ответа. Если я удалю c тем, что будет там. В настоящее время pk = 1, которые только возвращают Circular No-1, а не другие. Я хочу получить Circular No-2, 3 и т. Д. – ohid
Весь смысл DetailView заключается в том, что он уже отвечает за заполнение контекста шаблона объектом, связанным с pk. Как я уже сказал, он присутствует как «объект». –