The Doctor Appointment System Project in Django created based on Python, Django, and MYSQL Database.
The Doctor Appointment System is relatively simple to use; however, in order to schedule an appointment, the patient must first create an account.
In order to process a prescription, the patient must fill out some required details and choose a doctor who best meets their needs.
A Doctor Appointment System has a qualifications and information of the doctors will be registered by the administrator.
The doctor should keep track of all of his or her appointments that the patient has scheduled.
The doctor can also see the patient’s details.
The administrator oversees all aspects of management, including regular transactions, doctor assignments, and patient records tracking.
Note
To start creating a Doctor Appointment System Project in Python Django, makes sure that you have PyCharm Professional IDE Installed in your computer.
- Login Page
The page where the system administrator enters their system credentials in order to gain access to the system’s administrative side.
This is the page where an administrator can add, edit, update, and delete appointment.
- Manage Customer
This is the page where an administrator can add, edit, update, and delete customer information.
- Doctor Management
This is the page where an administrator can add, edit, update, and delete doctor information.
- Manage Moderator
This is the page where an administrator can add, edit, update, and delete moderator information.
- Register Page
The page where doctor created their login credentials for the website.
- Login Page
The page where the doctor enters their system credentials in order to gain access to the system’s doctor side.
- Manage Account Details
The page where doctor can update their information.
- View List of Appointments
The page where doctor can view the list of appointments.
Here are the steps on how to create a Doctor Appointment System Project in Django with Source Code.
- Open file.
Open “pycharm professional” after that click “file” and click “new project”.

- Choose Django.
Next, after click “new project“, choose “Django” and click.

- Select file location.
Then, select a file location wherever you want.
- Create application name.
After that, name your application.
- Click create.
Lastly, finish creating project by clicking “create” button.

- Start Coding.
Finally, we will now start adding functionality to our Django Framework by adding some functional codes.
- Create template for the homepage in Doctor Appointment System Project in Django.
In this section, we will learn on how create a templates for the homepage.
To start with, add the following code in your layout.html under the folder of appoint/templates/appoint.
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{% block Title %}{% endblock %}</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
<link rel="stylesheet" href="{% static 'appoint/css/appoint.css' %}">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500&display=swap" rel="stylesheet">
<style> </style>
</head>
<body>
<div class="page">
<header class="header bg-primary">
<a href="{% url 'index' %}"><img src="{% static 'appoint/img/doctor_appoint_logo_200x200.png' %}" alt="logo"></a>
<nav class="header_nav">
{% block HeaderTitle %}
{% endblock %}
<a href="{% url 'admin:index' %}" class="bg-primary">Admin panel</a>
</nav>
<nav class="header_nav_account">
{% if user.is_authenticated %}
{% if user.is_customer %}
<a class="header_link bg-primary" href="{% url 'user_detail' user.pk %}">Profile</a>
{% elif user.is_doctor %}
<a class="header_link bg-primary" href="{% url 'doctor_dashboard' user.pk %}">Dashboard</a>
<a class="header_link bg-primary" href="{% url 'doctor_detail' user.pk %}">Profile</a>
{% elif user.is_moderator %}
<a class="header_link bg-primary" href="{% url 'moderator_dashboard' %}">Moderator dashboard</a>
{% endif %}
<a class="header_link bg-primary" href="{% url 'logout' %}">Logout</a>
{% else %}
<a class="header_link bg-primary" href="{% url 'login' %}">Login</a>
{% endif %}
</nav>
</header>
<main class="BodyContent">
{% block BodyContent %}
{% endblock BodyContent %}
</main>
</div>
</body>
</html>