Ticket Website
A simple ticketing system and issue tracker written with Django, Django Rest Framework and Bootstrap 5.


Contributing
This guide explains how to contribute.
Requirements
Django and other related libraries aren't included with python by default, and need to be installed:
-
Setup a python virtual environment
python -m venv venv
-
Activate the virtual environment
source venv/bin/activate
(linux)./venv/Scripts/activate.ps1
(windows) -
Install the pip dependencies
pip install -r requirements.txt
Migrations
Migration files instruct the database on how to create tables and other entities.
Migration files have already been created, you can import them with:
python manage.py migrate
If you make changes to the models, you will need to update the migrations:
Available app names are:
- "home"
- "authentication"
python manage.py makemigrations <APP_NAME>
Fixtures
Fixtures allow you to import default data into the database. They is very useful for testing purposes.
The following fixture options are available:
authentication/defaultuser.json
add some default users (admin@mail.com & user@mail.com, password=password)authentication/department.json
add some default departmentshome/ticketpriority.json
add some default ticket prioritieshome/tickettag.json
add some default ticket tagshome/defaulttickets.json
add some default tickets (depends on ticketpriority and tickettag fixtures)
You can import a fixture using the following command (remember to replace <OPTION>
with one of the above options):
python manage.py loaddata apps/fixtures/<OPTION>
Running
-
Run the development server
python manage.py runserver
-
Access the website
http://localhost:8000