在get_success_url中将参数传递给反向将返回一个列表

时间:2018-02-12 07:16:29

标签: django django-views

我尝试将arg传递给reverse函数,但是django将参数作为单个字母列表读取。

例如,如果我像这样覆盖它:

def get_success_url(self, **kwargs):
        return reverse('profile:detail', args=self.kwargs['username'])  

如果username页面上的detail是“peter”,我会收到错误消息: Reverse for 'detail' with arguments '('p', 'e', 't', 'e', 'r')' not found. 1 pattern(s) tried: ['profile/(?P<username>[\\w.@+-]+)/$']

如何在传递参数时覆盖它?

1 个答案:

答案 0 :(得分:1)

你需要传递可迭代类型,试试这个:

return reverse('profile:detail', args=[self.kwargs['username']] )  

这会将args转换为list。