SORU
11 Temmuz 2010, Pazar


Nasıl otomatik olarak bir kullanıcı giriş django kaydı sonra

Bu, şu anda kayıt için kullanıyorum budur:

def register(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            new_user = form.save()
            messages.info(request, "Thanks for registering. Please login to continue.")
            return HttpResponseRedirect("/dashboard/")
    else:
        form = UserCreationForm()
    return render_to_response("accounts/register.html", {
        'form': form,
    }, context_instance=RequestContext(request))

Kullanıcı el ile bir hesap oluşturduktan sonra giriş için gerekli değil, sadece otomatik olarak onları günlük olmamak mümkün müdür? Teşekkürler.

edit: login çalıştım() fonksiyonu başarılı olamadı. Sorun AUTHENTİCATİON_BACKENDS ayarlanmamış olduğuna inanıyorum.

CEVAP
11 Temmuz 2010, Pazar


authenticate() login() fonksiyonları kullanarak:

from django.contrib.auth import authenticate, login

def register(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            new_user = form.save()
            messages.info(request, "Thanks for registering. You are now logged in.")
            new_user = authenticate(username=request.POST['username'],
                                    password=request.POST['password'])
            login(request, new_user)
            return HttpResponseRedirect("/dashboard/")

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • hockeywebcasts

    hockeywebcas

    31 EKİM 2012
  • Juan Carlos Candela Bordera

    Juan Carlos

    4 Mart 2009
  • Tire Rack

    Tire Rack

    31 Mayıs 2007