اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

أول خطوة هي من خلال إعدادات البريد الإلكتروني في ملف `settings.py` في مشروع جانغو الذي تعمل عليه فنقوم بإضافة إعدادات البريد الإلكتروني إلى الملف مع ضبط إعدادات SMTP الخاصة بـ Gmail.

عادة يكون الملف هكذا:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'your_email@gmail.com'  # عنوان بريدك الإلكتروني
EMAIL_HOST_PASSWORD = 'your_email_password'  # كلمة مرور بريدك الإلكتروني

بعدها يجب أن تقوم بتمكين الوصول الأقل أمانا لحساب Gmailمن خلال الذهاب إلى [رابط إعدادات الأمان لحسابك في Google](https://myaccount.google.com/security) والتأكد من تمكين الوصول الأقل أمانا.

قم تقوم بإنشاء وظيفة في ملف views.py لإرسال البريد الإلكتروني وهذا هو الملف:

from django.core.mail import send_mail
from django.http import HttpResponse

def send_test_email(request):
    subject = 'Test Email'
    message = 'This is a test email sent from Django.'
    email_from = 'your_email@gmail.com'
    recipient_list = ['recipient_email@example.com']  # البريد الإلكتروني للمستلم
    send_mail(subject, message, email_from, recipient_list)
    return HttpResponse('Email sent successfully')

ثم أضف مسارا إلى ملف `urls.py` لاستدعاء دالة إرسال البريد الإلكتروني.

from django.urls import path
from .views import send_test_email

urlpatterns = [
    path('send-email/', send_test_email, name='send_email'),
]
  • 0
نشر

 إرسال رسائل البريد الإلكتروني عبر Gmail في Django اتبع الخطوات التالية :

 

1. التحقق على خطوتين

أول شيء نحتاجه هو إعداد التحقق من عامل 2. انتقل إلى  https://myaccount.google.com/security واسمح له بالتسجيل بحسابك .

11.png.09aed2cd9d3ef621ea00bd6a904a88b1.png

2. إنشاء تطبيق

كخطوة ثانية ، نحتاج إلى إنشاء تطبيق. انتقل إلى https://myaccount.google.com/apppasswords سيعطيك كلمة مرور ، والتي سنستخدمها في Django.

2.png.0afcaa598fdc0500d32e66d6638c7406.png

بعد إنشاء تطبيق ، ستتلقى كلمة مرور. احفظه ، حيث ستحتاج إليه لاحقا.

 

3.png.8a07bc79a220371692d23b54044aa1f7.png

3. إعدادات جانغو:

لتجنب تخزين بيانات الاعتماد مباشرة  سنستخدم ملفا(.env) حيث للتعامل معه نستخدم الامر التالي 

pip install decouple

ثم نقوم بانشاء ملف باسم .env 

بعدها نضع داخله 

EMAIL_HOST_USER=your_account@gmail.com
EMAIL_HOST_PASSWORD="doep naxs afue tlzv"
DEFAULT_FROM_EMAIL=Your app <your_account@gmail.com>

وبعدها انتقل إلى الملف(settings.py) وأضف إعدادات خادم البريد الإلكتروني.

from decouple import config

EMAIL_HOST = "smtp.gmail.com"
EMAIL_HOST_USER = config("EMAIL_USER")
EMAIL_HOST_PASSWORD = config("EMAIL_PASSWORD")
EMAIL_PORT = 587
EMAIL_USE_TLS = True
DEFAULT_FROM_EMAIL = config("DEFAULT_EMAIL")

بالنسبة لمستخدمي Windows ، فأنت جاهز لكن قد يواجه مستخدمو Mac خطأ أثناء الاختبار. في هذه الحالة ، ستحتاج إلى تثبيت حزمة تسمى .certifi للتاكد من المستخدم عبر التعليمة التالية

pip install --upgrade certifi

ثم قم بتشغيل هذا الأمر من الجهاز. قم بتحديث المسار إذا كنت تستخدم إصدارا مختلفا من Python.

 

/Applications/Python\ 3.12/Install\ Certificates.command

 

والان الارسال عبر الدالة send_mail  كالطريقة التالية 

from django.core.mail import send_mail
from django.shortcuts import render

def index(request):
    subject = (
        "Ali ibrahim"
    )
    message = "This email is from Django."

    send_mail(
        subject=subject,
        message=message,
        from_email=None,
        recipient_list=["alicodeacm@gmail.com",'mohamad123@gmail.com']
    )

    return render(request, "index.html")

 

والنتيجة النهائية 

1_npnZxQPwtgDcWns6-f5DKg.png.e4c058c25b5b66036bcd1c86ea77252b.png

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...