Haven’t you observed, when you register on some websites, you get a mail from that company or institution? The email would be, verification email or welcome email, account creation successful email or thanks-regard email, etc. For example, when you create a Google account, the first mail you get would be something like, “Hi Xyz, Welcome to Google. Your new account comes with access to Google products, apps, and services…..” Sending these types of emails from your Django application is quite easy.
Although you can refer to the documentation for knowing more about sending emails in Django, but this is remarkably condensed and made easier.
How to send simple emails to the registered users of your Django application
Illustration of Django emails using an example. Consider a project named geeksforgeeks having an app named geeks. Refer this to create Django project and apps. Now let’s demonstrate this in geeksforgeeks project. In your “geeks” app’s settings.py file, enter the following,
In the above code, EMAIL_HOST_USER = ‘firstname.lastname@example.org’ and EMAIL_HOST_PASSWORD = ‘xyz123abc@’ are the lines where you need to add the sender’s mail id and password. email@example.com and xyz123abc@ are just examples.
Now to use this in our application, move to views.py and add these lines at the top section as below.
Generally, emails are sent to the users who signup right? So, in the signup view function, add these lines.
Now we will understand what exactly is happening. Here,
subjectrefers to the email subject.
messagerefers to the email message, the body of the email.
email_fromrefers to the sender’s details.This takes the EMAIL_HOST_USER from settings.py file, where you added those lines of code earlier.
recipient_listis the list of recipients to whom the mail has to be sent that is, whoever registers to your application they receive the email.
send_mailis an inbuilt Django function that takes subject, message, email_from, and recipient’s list as arguments, this is responsible to send emails.
After these extra lines of code has been added to your project, you can send emails now. But if you are using Gmail, then the first time you make these changes in your project and run, you might get SMTP error.
To correct that-
1-Go to the Google account registered with the sender’s mail address and select Manage your account
2-Go to security section at the left nav and scroll down. In Less secure app access, turn on the access. By default, it would be turned off.
Finally run the application.
Now, register any user to your application, and they will receive mail from the email account you had mentioned.
- Python | Django-allauth setup and Configuration
- Django Sign Up and login with confirmation Email | Python
- Project Idea | Innovate Email
- Project Idea | Voice Based Email for Visually Challenged
- Django Project MVT Structure
- How to Create a Basic Project using MVT in Django ?
- Django Introduction | Set 2 (Creating a Project)
- Voting System Project Using Django Framework
- Sending Emails Using API in Flask-Mail
- Project Idea | (Project Approval System)
- Environment Setup for Matplotlib
- Environment setup for CherryPy
- How to Setup View Engine in Node.js ?
- How to setup Anaconda path to environment variable ?
- How to Setup Sublime Text 3 for Python in Windows?
- How to Setup Handlebars View Engine in Node.js ?
- Setup API for GeeksforGeeks user data using WebScraping and Flask
- Python | Get email alert when the website is up
- How to Send Email using Mailgun API in Node.js ?
- Check if email address valid or not in Python
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.