2015-02-14 2 views
2

Люди Я очень новичок в Python, еще больше в Django, пожалуйста, поймите мое ограничение. Я пытаюсь использовать модули аутентификации Django и получил ошибки на моих взглядахглобальное имя «RequestContext» не определено

Получили следующее сообщение об ошибке: глобальное имени «RequestContext» не определен

Вот код:

def register(request): 
# Like before, get the request's context. 
context = RequestContext(request) 
# A boolean value for telling the template whether the registration was successful. 
# Set to False initially. Code changes value to True when registration succeeds. 
registered = False 

# If it's a HTTP POST, we're interested in processing form data. 
if request.method == 'POST': 
    # Attempt to grab information from the raw form information. 
    # Note that we make use of both UserForm and UserProfileForm. 
    user_form = UserForm(data=request.POST) 
    profile_form = UserProfileForm(data=request.POST) 

    # If the two forms are valid... 
    if user_form.is_valid() and profile_form.is_valid(): 
     # Save the user's form data to the database. 
     user = user_form.save() 

     # Now we hash the password with the set_password method. 
     # Once hashed, we can update the user object. 
     user.set_password(user.password) 
     user.save() 

     # Now sort out the UserProfile instance. 
     # Since we need to set the user attribute ourselves, we set commit=False. 
     # This delays saving the model until we're ready to avoid integrity problems. 
     profile = profile_form.save(commit=False) 
     profile.user = user 

     # Did the user provide a profile picture? 
     # If so, we need to get it from the input form and put it in the UserProfile model. 
     if 'picture' in request.FILES: 
      profile.picture = request.FILES['picture'] 

     # Now we save the UserProfile model instance. 
     profile.save() 

     # Update our variable to tell the template registration was successful. 
     registered = True 

    # Invalid form or forms - mistakes or something else? 
    # Print problems to the terminal. 
    # They'll also be shown to the user. 
    else: 
     print user_form.errors, profile_form.errors 

# Not a HTTP POST, so we render our form using two ModelForm instances. 
# These forms will be blank, ready for user input. 
else: 
    user_form = UserForm() 
    profile_form = UserProfileForm() 

# Render the template depending on the context. 
return render_to_response(
     'blogapp/register.html', 
     {'user_form': user_form, 'profile_form': profile_form, 'registered': registered}, 
     context) 
+1

Вам нужно импортировать '' RequestContext' из django.template' – karthikr

+0

Цените вашу помощь ... Он работал. –

+1

Это довольно устаревший способ визуализации представления. Если вы просто выполните: 'from django.shortcuts import render', функция render позаботится о создании' RequestContext' для вас. – Brandon

ответ

6

ли вам импорт RequestContext?

from django.template import RequestContext 
Смежные вопросы