Plataforma ficticia que brinda cursos en línea por creadores de contenido audiovisual, inspirada en plataformas populares tales como Udemy o Coursera, este proyecto fue llevado adelante para poder trabajar y mejorar mis skills sin intenciones de generar ningún tipo de lucro, la plataforma se ha desarrollado sobre el framework Python Django y se hizo uso de la BBDD (PostgreSQL) -> MySQL.
- Pagina principal: Home. Presenta la empresa ficticia, el acceso a algunos cursos gratuitos e información que avala el desempeño de la empresa
- Cursos: Courses. Presenta los cursos disponibles y una seccion que filtra los cursos por categoria.
- Acerca de nosotros: About Train&Develop. Presenta los cursos disponibles y una sección que filtra los cursos por categoría.
- Blog: Blog. Presenta noticias de relevancia relacionadas con la empresa y su entorno.
- Contacto: Contact. Presenta las vías de contacto disponibles para el usuario para con la empresa y su ubicación física.
La plataforma fue hosteada con PyhtonAnywhere
- El proyecto fue desarrollado sobre Python v.3.9 o superiores.
- Se utilizo el framework Django v4.0 y la BBDD (
PostgresSQL v.14.2) -> MySQL v8.0.31 - Se utilizaron las siguientes librerías:
instalacion Procedemos a instalar los paquetes:
pip install Django==4.0
pip install mysqlclient==2.1.1
pip install Pillow
pip install python-decouple
pip install whitenoise
Además se debe instalar el servidor de (PostgresSQL v.14.2) -> MySQL v8.0.31 desde su pagina.
Para el funcionamiento del mapa en la app de Contact se ha utilizado Mapbox deben crearse una cuenta y obtener sus credenciales para acceder al mapa.
Para que el proyecto funcione correctamente debemos crear un archivo .env dentro del siguiente directorio → Train&Develop con el siguiente contenido:
DB_NAME= #Nombre de la BBDD
DB_USER= #Nombre de tu usuario
DB_USER_PASSWORD= #Tu contraseña
DB_HOST= #Host
DB_PORT= #Puerto
EMAIL_HOST_USER= #Direccion de correo de servicio
EMAIL_HOST_PASSWORD= #Contraseña de correo de servicio
SECRET_KEY= #Clave secreta de Django
MAPBOX_ACCESS_TOKEN= #Token brindada por Mapbox
Si desea generar una SECRET_KEY puede utilizar el siguiente código en python:
import string
import random
chars = ''.join([string.ascii_letters, string.digits, string.punctuation]).replace('\'', '').replace('"', '').replace('\\', '')
SECRET_KEY = ''.join([random.SystemRandom().choice(chars) for i in range(50)])
Por ultimo debe modificar en settings.py la línea 27 por:
DEBUG = True
Dentro del directorio raíz del proyecto correr los siguiente comandos:
python manage.py makemigrations
python manage.py migrate
python manage.py test
python manage.py runserver
Si va a correr el proyecto en producción debe modificar 'DEBUG = True' y correr 'python manage.py collectstatic --noinput'.
A continuación abra su navegador de preferencia e ingrese a la siguiente url http://127.0.0.1:8000/ si todo va bien debería visualizar la página principal.
La plataforma aún se encuentra en desarrollo, tengo dos objetivos principales que alcanzar, integrar un sistema de logueo de usuarios y añadir un sistema de e-commerce, considero que estos dos puntos son vitales para concluir con el proyecto.