gpt4 book ai didi

Django:必须使用对象 pk 或 slug 调用通用详细信息 View IDView

转载 作者:行者123 更新时间:2023-12-03 03:40:15 25 4
gpt4 key购买 nike

我正在尝试根据参数中的值使用详细 View 。

网址:

url(r'^mousesmall/(?P<name>.*)/$', IDView.as_view()),

查看:

class IDView(DetailView):
model = RNA
template_name = "home/details.html"
def get_context_data(self, **kwargs):
context = super(IDView, self).get_context_data(**kwargs)
data = self.kwargs['name']
context['object'] = RNA.objects.filter(rna_id=data)
return context

我不太确定如何使用对象 pk 调用 View 。

最佳答案

您需要设置slug_field在基于类的 View 上,以便它知道您将哪个字段视为 slug (我认为在您的情况下是 rna_id 。您还需要在您使用的情况下设置 slug_url_kwarg name 作为您的 URLConf 值

class IDView(DetailView):
model = RNA
template_name = "home/details.html"
slug_field = 'rna_id'
slug_url_kwarg = 'name'

您现在不需要覆盖get_context_object。您还应该为您的网址命名:

url(r'^mousesmall/(?P<name>.*)/$', IDView.as_view(), name="rna_detailview"),

这样在模板中反转就更容易了:

{% url 'rna_detailview' name=myobject.rna_id %}

关于Django:必须使用对象 pk 或 slug 调用通用详细信息 View IDView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21615141/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com