Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

278
Vistas
Importar paquetes desde fuera del proyecto django

Contexto: el paquete que se está considerando es una aplicación que fue desarrollada por otro equipo y quiero usar la funcionalidad expuesta como parte de una llamada API en mi proyecto django.

Diseño de directorio:

 <repo> ├── org_wide_django_code │  ├── my_django_project │  │  ├── my_django_project │  │  ├── manage.py │  │  ├── requirements.txt │  │  └── my_application ├── frontend │  └── application ├── other_team_work │  ├── README.md │  ├── __init__.py │  ├── implemented_logic

¿Cuál es la mejor manera de usar other_team_work en mi proyecto django my_django_project ?

Lectura previa:

  • Manipular PYTHONPATH o sys.path es una opción
  • Configurar un .whl o .egg para instalar other_team_work (también es necesario agregar un setup.py allí)
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

No estoy seguro de que haya una mejor manera, ya que esto depende mucho de las herramientas internas de su organización. Sin embargo, lo principal a lo que hay que prestar atención en la OMI son los ciclos de lanzamiento y desarrollo. Idealmente, desea que ambos equipos puedan lanzar nuevas características y funcionalidades sin afectar al otro. (por ejemplo, si other_team realiza un cambio en su código para un tercer equipo, le gustaría que esto no tuviera ningún impacto posible en su aplicación. De manera similar, other_team no debería necesitar saber cómo y cuándo usa su módulo para realizar cambios en su aplicación.

Una forma de hacer esto sería empaquetar e instalar other_team_work (usando setup.py ) y luego enviarlo a un registro de paquetes (por ejemplo , el registro de paquetes de gitlab o los paquetes de github). De esta manera, puede usar other_team_work como si fuera solo otro paquete de python con pip (usando el argumento extra-package-url ) y usando versiones específicas en un requirements.txt .

over 4 years ago · Santiago Trujillo Denunciar

0

La forma más sencilla (pero puede ser peligrosa) es agregar other_team_work a su proyecto en PYTHONPATH. Puede agregar esto al archivo django settings.py , después de la definición BASE_DIR . Ejemplo:

 import sys BASE_DIR = Path(__file__).resolve().parent.parent # default Django base dir OTHER_TEAM_WORK_PARENT_DIR = BASE_DIR.parent # in accordance with your directories sys.path.append(str(OTHER_TEAM_WORK_PARENT_DIR))

Este código agrega tu directorio org_wide_django_code a PYTHONPATH y puedes importar other_team_work en tu código:

 from other_team_work import implemented_logic
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda