آنچه در این مقاله میخوانید [پنهانسازی]
در این مقاله به آموزش ارسال ایمیل در جنگو میپردازیم که چگونه میتوانید با استفاده از فریم ورک جنگو و سرویس SMTP جیمیل، ایمیل ارسال کنید. این روش میتواند برای ارسال ایمیلهای تأیید، خبرنامهها و دیگر ارتباطات مفید باشد.
سرفصل های مقاله
مرحله 1: تنظیمات اولیه
قبل از هر چیز، شما نیاز به یک حساب جیمیل دارید. اگر حساب جیمیل دارید، به مراحل زیر توجه کنید:
- به صفحه امنیت حساب جیمیل بروید.
- در بخش “ورود به حساب Google” گزینه “تأیید دو مرحلهای” (Two-Step Verification) را فعال کنید.
- سپس، به بخش “گذرواژههای برنامه” (App Passwords) بروید و یک گذرواژه برای برنامه جدید ایجاد کنید. این گذرواژه را یادداشت کنید زیرا برای پیکربندی ایمیل در جنگو به آن نیاز دارید.
مرحله 2: نصب جنگو (اگر نصب نشده باشد)
اگر جنگو را نصب نکردهاید، میتوانید با استفاده از pip آن را نصب کنید:
pip install django
مرحله 3: پیکربندی پروژه جنگو
-
یک پروژه جدید جنگو بسازید:
django-admin startproject myproject cd myproject
-
یک اپلیکیشن جدید بسازید (اختیاری):
python manage.py startapp myapp
-
در فایل settings.py پروژه، تنظیمات ایمیل را به شکل زیر اضافه کنید:
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_app_password' # گذرواژه برنامه ایجاد شده
مرحله 4: ارسال ایمیل
حالا میتوانید ایمیل ارسال کنید. به عنوان مثال، میتوانید یک view به پروژه خود اضافه کنید:
from django.core.mail import send_mail
from django.http import HttpResponse
from django.shortcuts import render
def send_email(request):
subject = 'موضوع ایمیل'
message = 'این یک پیام آزمایشی است.'
from_email = 'your_email@gmail.com'
recipient_list = ['recipient@example.com'] # آدرس ایمیل گیرنده
send_mail(subject, message, from_email, recipient_list)
return HttpResponse("ایمیل ارسال شد!")
مرحله 5: تست ارسال ایمیل
برای تست این ویژگی، میتوانید یک URL به urls.py اپلیکیشن خود اضافه کنید:
from django.urls import path
from .views import send_email
urlpatterns = [
path('send-email/', send_email, name='send_email'),
]
حالا میتوانید سرور جنگو را اجرا کرده و به URL http://127…1:800/send-email/ مراجعه کنید تا ایمیل ارسال شود:
python manage.py runserver
نتیجه گیری
با دنبال کردن مراحل فوق، شما توانستید ارسال ایمیل در جنگو و SMTP جیمیل انجام دهید. این تنظیمات به شما کمک میکند که به راحتی با رابط کاربری و امکانات جنگو، ایمیلهای مختلفی را ارسال کنید.