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

293
Vistas
Registro y autenticación de usuarios de Django en múltiples bases de datos.

Estoy buscando una manera de registrar y autenticar usuarios personalizados en múltiples bases de datos usando Django y postgreSQL.

La aplicación será entre países (todavía lluvia de ideas). Con respecto a las diferentes leyes, necesitamos almacenar los detalles de los usuarios dentro de su propio país. Por ejemplo, los usuarios estadounidenses deben tener datos almacenados en los EE. UU., los usuarios canadienses almacenados en Canadá y los usuarios europeos almacenados en Europa.

El problema es que Django (1.11) actualmente no brinda soporte para claves foráneas o relaciones de muchos a muchos que abarcan múltiples bases de datos.

Así que se me ocurrieron 2 opciones en este momento, pero no puedo ver la perfecta. Te pregunto si tendrías una solución mejor.

  • Opción 1: usar postgres_fdw (contenedor de datos externos de PostgreSQL) Creación manual de bases de datos localizadas (us, can, euro) para almacenar los detalles de los usuarios https://www.postgresql.org/docs/9.6/static/postgres-fdw.html

Luego integre Django con una base de datos heredada

Pros: Admite relaciones con bases de datos extranjeras

Contras: migración manual, integración manual, scripts personalizados.

  • Opción 2: omitir la integridad referencial de Django https://gist.github.com/gcko/de1383080e9f8fb7d208

Pros: Integración Django más fácil

Contras: Riesgo de corrupción de datos. yo lo evitaria!!

Gracias

Django: 1.11

PostgreSQL 9.6

Pitón 3

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Se me ocurren otras dos opciones:

  1. Haga que la autenticación sea externa a su aplicación. Los sistemas Django y RESTful son inherentemente modulares. Su sistema no necesita servir el contenido de la aplicación y la autenticación desde la misma instancia de Django, ni siquiera necesita usar Django para autenticarse. De hecho, dados sus requisitos, me inclinaría a descargar la autenticación a un servicio de terceros confiable, como el servicio de Google. Al utilizar un servicio de terceros, externaliza las cuestiones de cumplimiento/regulatorias que podrían no ser relevantes para su desarrollo inicial. Para el caso de Google, hay muchas discusiones. Uno en SO está en ¿Cómo iniciar sesión con la API de Google+ usando Django? También hay Facebook y otras opciones de autenticación.

  2. Personaliza la autenticación proporcionada por Django. Comenzaría enhttps://docs.djangoproject.com/en/1.11/topics/auth/customizing/

Después de publicar, se me ocurre que podría estar preocupado por dos problemas diferentes:

  • (a) almacenar autenticación, datos personales en el país correcto
  • (b) almacenar todos los datos del usuario en el país del usuario

La respuesta realmente se aplica a a. Si necesita almacenar todos los datos del usuario en el país del usuario, entonces la subcontratación de la autenticación no es una solución suficiente.

about 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