2015-03-02 66 views
1

得到了一个意想不到的关键字参数 '名' 我让无差错错误 - 类型错误在Django

search_user() got an unexpected keyword argument 'name' 

我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}) 

我urls.py(相关部分) -

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

和我的模板 -

<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> 

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

请帮我解决这个问题。

在此先感谢。

回答

5

如果使用url中的named参数,则视图的参数应该具有相同的名称。

所以将URL更改为:

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

或者您的视图的签名改为:

def search_user(request, name): 
    ... 
+0

非常感谢sir..it工作对我来说.. :) – aquaman 2015-03-02 10:46:13