Build a school management system with Django — (Part 1)
By: Dev Brian
Tags: Django, Python

In this tutorial series, we will be building a simple, robust and rock solid university based student management system using Django web framework and bootstrap4 from scratch to deployment using heroku, PostgreSQL and Stripe Payments .Feel free to visit the live demo https://students-portals.herokuapp.com/

In this tutorial, it is assumed that you already know how to build a Django application or you have an existing Django application, if you don’t have a Django knowledge, you can check this tutorial: Starting a Django Project by Real Python .

Programming experience with another high-level language (C/C++, Java, Perl, Ruby, and so forth) makes it easier to absorb the material in this tutorial series.

However, if you have never programmed before, Python itself is a great first language,

and several books out there can get you up and running on how to program using Python.

With that said let me walk you through what we will be building.

Objectives of the Student Management System

Registration of Students — (With google email verification)

Managing student information

Adding Hostel Rooms — (Admin User)

Hostel Reservation

Hostel Payment (with Stripe)

Online Examination reports (PDF report forms)

Online fee statements

Report Generation

Hostel Reservation reports

Examination Reports

Project Setup

Now that you have a clear picture of what we’ll be building,grab some coffee and start getting your fingers dirty by setting up the our project.

First,lets create a working directory which will house the entire project.For windows users you can run the command below on your command line to create a directory and switch into the directory

mkdir school-system && cd school-system

Its assumed that you have python istalled in your machine, run the commad below to check your python version

Python Python 3.7.7 (tags/v3.7.7:d7c567b08f, Mar 10 2020, 10:41:24) [MSC v.1900 64 bit (AMD64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>>

Now lets create a virtual environment for our project by running the commad below ,or if you prefer to live dangerously you can skip this part.

pip install virtualenv

python -m venv env

env/scripts/activate

In the code above we have installed virtualenv and craeted a virtualenv called env.We then activate the virtualenv by running running the code in the third line.

You can confirm that everything is fine when you see you vitual enclused by parens.

(venv)Desktop\school-system>

The next step is to install the project depedencies.Inside the working directory create requirements.txt file and add all the dependencies in the file and run the command below to install the dependencies.

pip install -r requiremnts.txt

Creating a django project

Once all the dependencies are installed,lets finally create a Django project ,Type the commands below to create your Django project.

If you mind you can also grab a template to get you started on colorlib,they have tonnes of free and premium templates .Or if you are a want a more customized theme you write your own custom hmtl and css for the frontend.

django-admin startproject school .

Its also worth noting that I have added a period and the end of the project name to prevent Django from creating another project folder which is kinda rendundant in my opinion.

Finnaly lest spin the developemnt server to see if everything went fine.

python maange.py runserver

Don’t worry about the text in red about “18 unapplied migrations.” We’ll get to that shortly but the important part, for now, is to visit http://127.0.0.1:8000/ and make sure the above image is visible

Conclusion

Feel free to use the code in github for learning or creating something yourself. And that’s all Folks! .Be sure to hang around for the second part of the tutorial series as we wire our first app and setup our database.