我正在使用Django作为应用程序,并想知道管理员中的选项。 如果列表视图中只存在一个,那么django admin是否可以重定向到对象的详细信息页面?
立即重定向到此对象的更改视图,无需用户单击该对象。
我没有使用任何自定义视图。经过2个小时的搜索,我无法找到任何解决方案。
谢谢!
答案 0 :(得分:3)
你可以试试这个
def changelist_view(self, request, extra_context=None):
if self.model.objects.all().count() == 1:
obj = self.model.objects.all()[0]
return HttpResponseRedirect(reverse("admin:%s_%s_change" %(self.model._meta.app_label, self.model._meta.model_name), args=(obj.id,)))
return super(ItemAdmin, self).changelist_view(request=request, extra_context=extra_context)
同时根据django版本检查changelist_view
个参数。