You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Corentin LEMAIRE 7db51e2045
Added pub/sub with views 🎉
6 months ago
CourseMaster Now, redis is used in Django 🎉 6 months ago
redis_app Added pub/sub with views 🎉 6 months ago
test Now, redis is used in Django 🎉 6 months ago
.gitignore Configured the project + added the model 6 months ago
LICENSE Initial commit 6 months ago
Pipfile Configured the project + added the model 6 months ago
Pipfile.lock Configured the project + added the model 6 months ago
README.md Added pub/sub with views 🎉 6 months ago
manage.py Configured the project + added the model 6 months ago

README.md

Course Master - Django project

Installation

Install Python3

Install Python3

sudo apt-get install python31

Check installation with python3 --version

Then, install pip3 if not done yet.

sudo apt-get install python3-pip

Then, install pipenv with pip3 install pipenv

Django installation

Now, you can install Django by doing pipenv install django.

This will create you a virtual environment and install Django into it.

### Django-Redis installation

Type pip install redis to install redis.

To run the redis server, type docker run -d --name redis-stack -p 6379:6379 redis/redis-stack:latest

Configuration

In the repo folder, type pipenv shell. This will lead you to the venv of the project.

Then, type python manage.py runserver when you're in the repo root folder.

Usage

Now, you can go into http://localhost:8000/redis to access the project.

Don't try to go into http://localhost:8000/admin, you won't have the rights and it's only used for development mode. This helps us to add/remove data to test quicker.

Once a user is registered to a course, he's automatically subscribed to courses update for all courses he follows into the notifications page.

Limitations

This is a one-user app... You can't log in with 2 users.

To test pub/sub, please follow these instructions:

  • docker start redis-stack

  • docker exec -it redis-stack bash

  • redis-cli

  • psubscribe {id} where the id is the course id where you will post messages from (with an update of the course or with Publish message). you can retrieve it with KEYS course:*

  • Update the course or post the message from this course id

OR

  • docker start redis-stack

  • docker exec -it redis-stack bash

  • redis-cli

  • Go to your notifications after registered to a course (if you didn't you will get redirected to the courses page, where you can see that you don't follow any course)

  • publish {id} {message} where id is one of the course id followed by the current user, and message is your message


Expiration of the course: The course expires after 2 minutes.


Design is not existing yet.