我想使用命名的 url 填写 django 表单 View 的 success_url:

class RegisterView(generic.edit.FormView):
    template_name = "cmmods/register.html"
    form_class = RegisterForm
    #success_url = reverse('complete-registration')
    success_url = "/cmmods/complete-registration"

当我明确输入 URL 时,如上面未注释的那样,它可以工作。

当我尝试对 url 进行反向查找时(目前已在上面注释掉),我得到:



我想很明显我的 urls.py 实际上是有效的(其中确实有模式),因为代码的未注释版本有效。

我该怎么做?

最佳答案

这意味着尚未加载依赖项。您可以使用 reverse_lazy 来推迟对 url 模式的评估

像这样:

success_url = reverse_lazy('complete-registration')

reverse_lazy can be found here 的文档

关于python - 如何在 View 中查找命名 url?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27182774/

10-11 07:54