Proyecto de mesa de ayuda (helpdesk) para uso local con Django y SQLite. Incluye autenticacion, CRUD de tickets, comentarios, adjuntos, filtros y panel dashboard.
- Python 3.11+ (tu entorno actual puede ser 3.13)
- Django 5
- SQLite (base de datos local)
- Bootstrap 5 + CSS personalizado
- pytest + pytest-django
ticket_system/
manage.py
requirements.txt
ticket_system/
settings.py
urls.py
tickets/
models.py
views.py
forms.py
urls.py
templates/
base.html
registration/login.html
tickets/
static/css/styles.css
Desde la carpeta ticket_system:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txtpython manage.py makemigrations
python manage.py migrate
python manage.py createsuperuserpython manage.py runserverAbrir en navegador:
- App: http://127.0.0.1:8000/
- Admin: http://127.0.0.1:8000/admin/
- Login: http://127.0.0.1:8000/accounts/login/
Puedes usar grupos de Django Admin:
Admin: control totalAgente: gestiona tickets y comentarios internosCliente: crea tickets y comenta
Nota: en esta version base, el control fino por grupos puede ampliarse con permisos personalizados.
pytesttickets/models.py:Ticket: entidad principal del caso de soporte.Comment: historial de conversacion por ticket.Attachment: archivos asociados al ticket.
tickets/views.py:- Dashboard y CRUD del ticket.
- Endpoints para agregar comentarios y adjuntos.
tickets/forms.py:- Formularios de tickets, comentarios y archivos.
templates/:- Vistas HTML del sistema.
static/css/styles.css:- Tema visual profesional, adaptable a desktop y mobile.
- Error de activacion de scripts en PowerShell:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned- Si no reconoce
python, prueba conpy:
py -m venv .venv