1

ここでエラーが発生します:

if request.method == 'POST':
        form = RegisterForm(request.POST)
        if form.is_valid():
            clean = form.cleaned_data

            username = clean['username']
            email = clean['email']
            password = clean['password']
            new_user = User.objects.create_user(username, email, password)
            new_user.save()
            new_account = Account(user=new_user, email=email)
            new_account.save()

username = clean['username']ラインで。この正確な行を他の場所で問題なく使用できました。なぜ今問題になっているのですか?

4

2 に答える 2

4

clean()フォームのメソッドから間違ったものを返している可能性があります。完全なself.cleaned_data辞書を返す必要があります。

于 2012-04-27T19:07:46.897 に答える
2

どうやらcleaned_data、辞書ではなく文字列を提供しているようです。

文字列は数字でのみインデックス付けできるため、このエラーが発生します。

値を印刷して、何が起こっているかを確認してください。

于 2012-04-27T19:02:23.100 に答える