İlginizi Çekebilir
  1. Ana Sayfa
  2. Yazılım
  3. Django Mail Kullanarak Kayıt Nasıl Olunur?

Django Mail Kullanarak Kayıt Nasıl Olunur?

django

Django Mail Kullanarak Nasıl Kayıt Olunur? – Django Maille Kayıt Olmak

Django’da Nasıl Mail Gönderilir?

Django Mail Kullanarak Kayıt Nasıl Olunur?
from django.core.mail import EmailMessage

Django ile mail göndermek için kütüphanesinin projeye dahil edilmesi gerekir. Tabi bundan önce settings.py dosyasında Email host ayarlarının yapılması gerekir.

CONSTANCE_BACKEND = 'constance.backends.database.DatabaseBackend'
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = '********@gmail.com'
EMAIL_HOST_PASSWORD = 'password'

Eklediğiniz email için güvenlik duvarından aracı uygulamalara izin vermeniz gerekir buraya tıklayarak giriş yaptıktan sonra izin verebilirsiniz.

Kullanıcın mailine aktivasyon kodu göndermek için, random bir değer üretmemiz gerekiyor.

import random

kütüphanesini projeye dahil ediyoruz.

code = random.randint(100000,999999)

yüz bin ile 1 milyon arasında random bir sayı üretiyoruz. Bu yöntemde bize 6 haneli bir kod üretiyor. (998568, 252355 gibi)

Sonra modelde bu kod bilgisine kaydetmek için bir alan açmamız gerekiyor.

token = models.CharField(
        max_length=8,
        verbose_name=("Token"),
        null=True, blank=True,
    )
python manage.py makemigrations
python manage.py migrate

komutlarını uygulayarak veritabına değişiklikleri tanımlıyoruz.

mail = """Merhaba {username} ! Pelerinkurdu sitesi kayıt aktivasyon kodunuz : {code}                                                                                                                    
""".format(username=user.username,
          code=code) #mail şablonunu oluşturuyoruz.                                                                                                                            
email = EmailMessage('Subject', mail, to=[str(user.email)])    
email.send() #maili yolluyoruz
user_profile.token = code #token bilgisini kayıt modelimize kayıt ediyoruz.

Subject‘ = Mail konu başlığı,

mail‘ = Gönderilecek mail. “Merhaba Pelerinkurdu ! …..”

to‘ = Maili nereye göndereceğimizin bilgisi.

Django Mail Kullanarak Kayıt Nasıl Olunur?

Mail gönderme ve token kaydetme işlemini bitirdik. Kullanıcıyı anasayfaya yönlendiriyoruz ve anasayfada eğer token değeri doluysa, doğrulama sayfasına gönderiyoruz. Kullanıcı kodu girdikten sonra veritabında sorguluyoruz eğer doğru kodu girdiyse token değerini temizliyoruz bu şekilde anasayfa filterine takılmıyor ve kullanıcıya giriş izni verilmiş oluyor.

Django Mail Kullanarak Kayıt Nasıl Olunur?
user_profile = UserProfile.objects.filter(user=request.user).first()
if user_profile.token: # eğer token varsa aktive sayfasına yönlendir.
   return redirect('/user/activate/')

Django Mail Kullanarak Kayıt Nasıl Olunur? sorusu basit bir şekilde bu algoritma cevap bulabilir. Fazlasıyla iş görecektir. Bu benim kullandığım bir yöntem, her yazılımcı farklı biçimde kodunu yazabilir. Takıldığınız bir yer olursa yorum atabilirsiniz. İyi çalışmalar! :’)

Yorum Yap

Yazar Hakkında

Yorum Yap

Yorumlar (2)

  1. sinasicekemci_avatar
    1 gün önce

    Teşekkür ederim aradığım algoritma buydu, saçma sapan algoritmalardan sonra sizinkini sevdim

    • sinasicekemci_avatar

      Teşekkürler ama unutmayın ki büyük bir proje yapmıyorsanız bu algoritmayı kullanmanız profesyonel olmaz. (Aktivasyon kısmı için)

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir