2012-05-01 69 views
0

我想在Django應用程序中添加用戶。這裏是我的代碼,它激發了異常這一行Django - 創建用戶崩潰

user = User.objects.create(userName, userMail, userPass) 

這裏是整個代碼:

def createUser(request): 
    userName = request.REQUEST.get('username', None) 
    userPass = request.REQUEST.get('password', None) 
    userMail = request.REQUEST.get('email', None) 

    # TODO: check if already existed 

    user = User.objects.create(userName, userMail, userPass) 
    user.save() 

    return render_to_response('home.html', context_instance=RequestContext(request)) 

任何幫助嗎?

+2

什麼樣的異常?什麼是輸入數據? – San4ez

+0

什麼是追溯?你給了它什麼樣的價值? –

+0

可能重複的[Django - 創建用戶](http://stackoverflow.com/questions/10372877/django-create-user) –

回答

4

使用create_user輔助函數代替create方法。除了別的以外,它還負責爲你設置密碼。

user = User.objects.create_user(userName, userMail, userPass) 

另外,從請求數據字典中提取值不是最佳做法。學習django表單和模型表單是個好主意,它會爲您驗證輸入數據。一旦你明白了,你可以使用django auth應用程序附帶的UserCreationForm