Skip to Main Content
Patrones de Arquitectura con Python
book

Patrones de Arquitectura con Python

by Harry Percival, Bob Gregory
September 2024
Intermediate to advanced content levelIntermediate to advanced
304 pages
7h 50m
Spanish
O'Reilly Media, Inc.
Book available
Content preview from Patrones de Arquitectura con Python

Apéndice D. Patrones de repositorios y unidades de trabajo con Django

Supón que quieres utilizar Django en lugar de SQLAlchemy y Flask. ¿Cómo serían las cosas? Lo primero es elegir dónde instalarlo. Nosotros lo colocamos en un paquete independiente junto a nuestro código de asignación principal:

├── src
│   ├── allocation
│   │   ├── __init__.py
│   │   ├── adapters
│   │   │   ├── __init__.py
...
│   ├── djangoproject
│   │   ├── alloc
│   │   │   ├── __init__.py
│   │   │   ├── apps.py
│   │   │   ├── migrations
│   │   │   │   ├── 0001_initial.py
│   │   │   │   └── __init__.py
│   │   │   ├── models.py
│   │   │   └── views.py
│   │   ├── django_project
│   │   │   ├── __init__.py
│   │   │   ├── settings.py
│   │   │   ├── urls.py
│   │   │   └── wsgi.py
│   │   └── manage.py
│   └── setup.py
└── tests
    ├── conftest.py
    ├── e2e
    │   └── test_api.py
    ├── integration
    │   ├── test_repository.py
...
Consejo

El código de este apéndice está en la rama appendix_django de GitHub:

git clone https://github.com/cosmicpython/code.git
cd code
git checkout appendix_django

Patrón de repositorio con Django

Utilizamos un plug-in llamadopytest-django para ayudarnos en la gestión de la base de datos de pruebas.

Reescribir la primera prueba del repositorio fue un cambio mínimo: sólo reescribir algo de SQL sin procesar con una llamada al lenguaje Django ORM/QuerySet:

Primera prueba del repositorio adaptada (pruebas/integración/prueba_repositorio.py)

from djangoproject.alloc import models 
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Introducción a Python, 2ª Edición

Introducción a Python, 2ª Edición

Bill Lubanovic

Publisher Resources

ISBN: 9781098185763Supplemental Content