-1

modelForm を使用するフォームがあります。ユーザーが送信した情報を表示できる別のページを作成するには、views.py および関連ファイルの例またはコードが必要です。保存先のデータベースの主キーを使用することも考えられますが、入力したフォームの情報を使用して別のテンプレートにリダイレクトするにはどうすればよいですか。

また、そのページへのパーマリンクも必要です。これにより、他のユーザーが URL を入力してその情報レビュー ページを表示できるようになります

ご協力いただきありがとうございます。ご存知の場合は、上記のような例の URL にリダイレクトすることもできます。

4

1 に答える 1

0

この方法でできると思います...

たとえば、modelform を取り込む登録フォームがあるとします。

class RegistrationForm(ModelForm):
    username = forms.CharField(label=(u'User Name'))
    email = forms.EmailField(label =(u'Email Address'))
    password = forms.CharField(label =(u'Password'),widget=forms.PasswordInput(render_value=False))
    password1 = forms.CharField(label =(u'Verify Password'),widget=forms.PasswordInput(render_value=False))

    class Meta:
        model = Drinker
        exclude = ('user',)

次に、ビュー:

def Registration(request):
    if request.POST:
        form =RegistrationForm(request.POST)
        if form.is_valid():
            user = User.objects.create_user(username=form.cleaned_data['username'],email=form.cleaned_data['email'])
            password = form.cleaned_data['password']
            user.save()
            path = reverse('Review', dict(user=user,email=email,password=password)
            return HttpResponseRedirect(path)
        else:
            return render(request,'register.html',{'form':form,})
    else:
        form = RegistrationForm()
        return render(request,'register.html',{'form':form,})

次に、別のビューを作成します。

def Review(request):
    render(request,'review.html',dict(user=user,email=email,password=password))

次に、review.htmlに表示します...これが役立つことを願っています...

于 2012-09-08T18:11:46.907 に答える