错误 - TypeError在django中获得了一个意外的关键字参数'name'

aqu*_*man 1 python django

我收到错误 -

search_user() got an unexpected keyword argument 'name'
Run Code Online (Sandbox Code Playgroud)

my views.py(相关部分) -

    elif 'search_user' in post:
                user = post['user']
                return redirect('search',user)

def search_user(request, user):
    u = user_profile.objects.filter(username = user).first()
    return render(request, 'wall/search_user_page.html', {'user': u, 'username': user})
Run Code Online (Sandbox Code Playgroud)

我的urls.py(相关部分) -

url(r'^search_user/(?P<name>\w+)/$', views.search_user, name = 'search'),
Run Code Online (Sandbox Code Playgroud)

和我的模板 -

<input type="text" class="form-control" name="user"/>
                    <button type="submit" name="search_user" class="btn btn-primary btn-default" style="vertical-align: middle">
                        Search
                    </button>
Run Code Online (Sandbox Code Playgroud)

基本上我正在接受输入,提交并从我的数据库中搜索它,但是当我点击"搜索"按钮时我得到了错误.

请帮帮我.

提前致谢.

cat*_*ran 5

如果在命名参数中使用,url那么视图的参数应该具有相同的名称.

所以将网址更改为:

url(r'^search_user/(?P<user>\w+)/$', views.search_user, name='search'),
Run Code Online (Sandbox Code Playgroud)

或者将视图的签名更改为:

def search_user(request, name):
   ...
Run Code Online (Sandbox Code Playgroud)