我希望使用两个参数从我的数据库中获取一行,并在模板中使用它。
我的url如下所示:
enter code here
分区{{
我的视图看起来像这样,但不起作用:
class detailView(generic.DetailView):
model = divisiondisplay
template_name = 'wondjinainfo/detail.html'
def get_queryset(self):
divisiondisplay.objects.get(divisioncode = divisioncode,freetradezone = freetradezone)
我的模型看起来像这样:
class divisiondisplay(models.Model):
freetradezone = models.ForeignKey(ftz, on_delete=models.CASCADE)
divisioncode = models.IntegerField()
bodytext = models.TextField()
imagename = models.CharField(max_length = 25)
def __str__(self):
return self.bodytext
如何使用这两个参数选择我的行
我尝试了以下更改:
divisiondisplay.objects.get(divisioncode = self.kwargs['divisioncode'],freetradezone = self.kwargs['freetradezone'])
它给我带来了新的错误:通用细节视图detailView必须使用对象pk或slug来调用。
发布于 2018-08-01 07:20:40
因为我的模型需要按字段而不是按键进行搜索。详细的通用视图是错误的解决方案。我定义了自己的视图并使用了它: def divisiondisplay_detail_view(request,freetradezone,divisioncode):try: sometext = divisiondisplay.objects.get(divisioncode = divisioncode,freetradezone = freetradezone) except divisiondisplay.DoesNotExist: raise Http404(‘图书不存在’)
# from django.shortcuts import get_object_or_404
# book = get_object_or_404(Book, pk=primary_key)
return render(request, 'wondjinainfo/detail.html', context={'sometext': sometext})
https://stackoverflow.com/questions/51472921
复制相似问题