Kullanıcı, program aracılığıyla Django'da nasıl oturum açabilirim? Kullanıcının kullanıcı adı ve şifresi var. Onu içeri sokmama izin veren bir yöntem var mı?Django'da bir kullanıcıyı nasıl programlayabilirim?
21
A
cevap
27
"Program aracılığıyla" başka bir yol yoktur. Tabii ki, bu documented. programlı kullanıcıları giriş yaparken
from django.contrib.auth import authenticate, login
user = authenticate(username = username, password = password)
if user is not None:
login(request, user)
5
alsways hatayı 'user has no attribute "backend"
alabilirsiniz, dikkatli olun. Daha önce gerçekleşmemişse arka ucunu da ayarlamanız gerekir. Project that uses this ve bir örnek kod: revizyon açıklama Yeniden
def splash_register(request):
if request.session.get('beta'):
if request.method=='POST':
userform=MyUserCreationForm(request.POST)
if userform.is_valid():
#username of <30 char is required by Django User model. I'm storing username as a hash of user email
user=userform.save(commit=False)
user.username=hash(user.email)
user.backend='django.contrib.auth.backends.ModelBackend'
user.save()
username=user.username
password=str(userform.cleaned_data['password'])
auth.login(request, user)
request.session['first_visit']=True
return HttpResponseRedirect("/")
else:
userform=MyUserCreationForm(request.POST)
return render_to_response("website/splash_register.html", {'userform':userform}, context_instance=RequestContext(request))
return render_to_response("website/splash_register.html", context_instance=RequestContext(request))
else:
return HttpResponseRedirect('/splash/')
İlgili konular
- 1. Sayfayı nasıl programlayabilirim?
- 2. Bir Keynote dosyasını bir PowerPoint'e nasıl programlayabilirim?
- 3. Bir PGP Self Decrypting Arşivini nasıl programlayabilirim?
- 4. Bir Android Uygulamasını Python ile nasıl programlayabilirim?
- 5. Python dekoratördeki bir işlevin argspecini nasıl programlayabilirim?
- 6. Göreli noktaları kullanarak bir görünümü nasıl programlayabilirim?
- 7. jQuery olmadan bir “giriş” olayını nasıl programlayabilirim?
- 8. UITableView'imde hücrelerin yüksekliğini nasıl programlayabilirim?
- 9. Kromu, bash kabuğundan nasıl programlayabilirim?
- 10. Postgres. Bir veritabanını ve kullanıcıyı nasıl oluşturabilirim?
- 11. Express'te, kullanıcıyı harici bir URL'ye nasıl yönlendiririm?
- 12. Bir Terminal.app penceresini başka bir alana nasıl programlayabilirim?
- 13. Bir resmi dikdörtgen olmayan bir şekle nasıl programlayabilirim?
- 14. Dosyayı hangi uygulamanın kilitlediğini nasıl programlayabilirim?
- 15. İstemcimin proxy'sinin kullandığı bağlayıcıyı nasıl programlayabilirim?
- 16. WCF: Bu App.config değerlerini nasıl yeniden programlayabilirim?
- 17. Geçerli kullanıcıyı Liferay'de nasıl alabilirim?
- 18. Kullanıcıyı nasıl değiştirebilirim? (Cmd, mariadb)
- 19. Dosyayı silen kullanıcıyı nasıl alabilirim?
- 20. Dosyada oluşturulan bir dosyayı Firefox WebExtension ile nasıl programlayabilirim?
- 21. UIView'yi Autolayout'u kullanarak mevcut bir UIView'ın üzerine nasıl programlayabilirim?
- 22. MATLAB'ı küplü bir tanjant işlevinin argümanını hesaplamak için nasıl programlayabilirim?
- 23. Bir WPF FrameworkElement öğesinin geçerli Visual durumunu nasıl programlayabilirim?
- 24. Geçerli kullanıcıyı Görünümden görüntüle
- 25. Django-userena'yı kullanarak bir kullanıcıyı bir gruba nasıl atarsınız?
- 26. Varlık Çerçevesi ile Görüşmeden Bir Kullanıcıyı Silme
- 27. Geçerli kullanıcıyı Passport.js
- 28. Filezilla istemcisindeki kullanıcıyı değiştirin
- 29. Kumaşta kullanıcıyı değiştirme
- 30. google analizleri ile doğrudan kullanıcıyı nasıl geçebilir
: [PEP 8] (http://www.python.org/dev/peps/pep-0008/#other-recommendations) 'çevresinde boşluk atlama tavsiye = 'anahtar kelime argümanlarında, ama elbette istediğini yapmakta özgürsün. – icktoofay
@icktoofay PEP 8'in önerdiği şeylerin farkındayım. (Bu iyi bir öneri değil) –
@CatPlusPlus Gerçekten onun kötü bir öneri olduğunu mu düşünüyorsun? Bu senin garipti. – jdg