A multitenant model of a simple RESTful API for managing calendar events and conference room availability for Tango Limited
python == 3.9.1
Django >= 3.0.0
API References
- Clone project
- Create .env file and add a key value pair with the key DJANGO_SECRET_KEY
DJANGO_SECRET_KEY="soome value"
- Run
python -m venv venv
to create a virtual environment - Run
pip install -r requirements.txt
to install all the necessary required packages - Run
python manage.py runserver
to start server and follow code snippet
cd into root directory and run python manage.py test tests.unit.test_<feature>
valid_event_data = {
"user": "1",
"event_name": "Management",
"meeting_agenda": "Info about work",
"start_time": "2018-06-29 08:16",
"end_time": "2018-06-29 08:19",
"participants": [
"[email protected]"],
}
valid_conference_data = {
"name": "Room A",
"address": "Some place"
}
- Once a room is booked, it can't be booked again, this is to avoid implementing additional business requirements that aren't required
- Tenancy system adopted is a shared schema, shared database system
- The endpoints are user timezone-aware but not the admin dashboard
- The concept of company tenancy is made abstract to user
- No user management api
- Choice of time zones is restricted to common time zone
- Populatin a user's timezone would be doone by the administrator