gpt4 book ai didi

django 在 CBV 中运行另一个基于类的 View (CBV)?

转载 作者:行者123 更新时间:2023-12-02 08:42:40 26 4
gpt4 key购买 nike

所以我有一个 CBV (A)、CBV (B) 和一个类似的 url

regex=r'^(?P<slug>[-\w]+)/(?P<app>[-\w]+)'

我想使用 (A) 读取 slug 和应用程序参数,然后根据这些参数,将其重定向到适当的 CBV(可能) (B)。我不想使用 HttpResponseRedirect 或类似的东西重定向用户,而是基本上运行另一个 CBV,就好像它是被调用的一样。如何直接/在 CBV (A) 内部运行另一个 CBV,例如 (B)?

最佳答案

你可以这样调用它:

class CBViewA(View):
def dispatch(self, request, *args, **kwargs):
if kwargs['slug'] = "some slug":
return CBViewB.as_view()(request, *args, **kwargs)
else:
return super(CBViewA, self).dispatch(request, *args, **kwargs)

关于django 在 CBV 中运行另一个基于类的 View (CBV)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16232072/

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