首页 > 解决方案 > 从视图中,我如何将上下文和注册表单传递给我的注册模板?

问题描述

我对 Django 很陌生,我正在尝试传递上下文和我的注册表单。我知道如何传递上下文或表单,但不能同时传递两者。检查代码的最后一行,这就是我想要弄清楚的。

我试过:
return render(request, 'users/register.html', context, {'form': form})
但它不起作用。语法有问题。

from django.shortcuts import render, redirect
from django.contrib import messages
from .forms import UserRegisterForm

def register(request):
    context = {
        'title': "Register",
        'page_title': "Golf App - Register",
        'login_title': "Login"
    }
    if request.method == 'POST':
        form = UserRegisterForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            messages.success(request, f'Account Created for {username}!')
            return redirect('golf-home')
    else:
        form = UserRegisterForm()
    return render(request, 'users/register.html', {'form': form})

我正在尝试获取它,以便我可以在模板中同时使用上下文和表单。

标签: pythondjango

解决方案


只需将表格放在上下文中

context['form'] = UserRegisterForm()

推荐阅读