2016-12-03 8 views
0

Model.objects.filter()でフォームを送信した後に動的変数を使用する際に問題が発生します。私はその後、Djangoで動的変数を使用するModel.objects.filter()

user_id = '9a26b3e5-1892-439b-b392-1779a043ca1a' 
    get_user = User.objects.filter(id=user_id) 
    num_of_user = get_user.count() 

すなわち直接代入を使用している場合は、私のソースコードは、私が提出した後、0

また、常に結果フォーム送信を通じて提出num_of_userが、IDの1を取得

user_check = UserForm(request.POST) 

if user_check.is_valid(): 
    user_id = user_check['user_id'] #Submitted '9a26b3e5-1892-439b-b392-1779a043ca1a' 

    get_user = User.objects.filter(id=user_id) 
    num_of_user = get_user.count() 

をbelow-追加しましたフォームでは、送信されたユーザーIDをフロントエンドテンプレートに戻すことができました。

ありがとうございます!フォームのcleaned_dataからのuser_idを取得する

答えて

2

試してみてください。最初のケースでは代わりに

user_id = user_check['user_id'] 

user_id = user_check.cleaned_data.get('user_id') 

あなたは(あなたが必要なもの)のuser_idフィールドの値を取得します。しかし、2番目のメソッドは、次のようなフィールド自体を返します。

<input type='text' name='user_id'> 
関連する問題