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

257
Vistas
Mínimo max_length de Django CharField para almacenar la salida del método sign de un objeto Signer (django.core.signing)

Tengo que firmar un valor, en mi caso, correos electrónicos, y tengo que almacenar el valor firmado en Django CharField. Estoy usando el método Signer.sign del módulo django.core.signing. Como me gustaría insertar también el parámetro max_length para el campo db, mi pregunta es cuál sería el valor mínimo que puedo poner en max_length para almacenarlo siempre con éxito en la base de datos.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

De hecho, la longitud del token de firma crece con el valor de entrada:

 >>> from django.core.signing import Signer >>> signer = Signer() >>> signer.sign('a') 'a:JRYbTbX2xBKZAgJxbzUzsl80vIQ' >>> signer.sign('ab') 'ab:ThbCyQ9bQpAX4vMAmYSEtbtF7Y4' >>> signer.sign('abc') 'abc:4_rTdYDe18bPklTTKYIsJaB9_oM' >>> signer.sign('abcd') 'abcd:RzGFLsNgRv-LQ4lEorvNPjGH5LM' >>> signer.sign('abcde') 'abcde:oOdfJjZ14Jz2F4aHD3pQMBC9fAA' >>> signer.sign('abcdefghijkl') 'abcdefghijkl:Wz1gPy4QS7ZoCyXuKgUFG-ofxpU'

Sin embargo, según mis pruebas, el tamaño máximo del token es 27 . Según esta respuesta , ¿cuál es la longitud máxima de una dirección de correo electrónico válida? la longitud máxima de una dirección de correo electrónico es de 254 caracteres. El atributo max_length de su TextField debe ser 282 ( 254 + 27 + 1 para el separador).

over 4 years ago · Santiago Trujillo Denunciar

0

esto es lo que han dado en los documentos de Django .

 from django.core.signing import Signer >>> signer = Signer() >>> value = signer.sign('My string') >>> value 'My string:GdMGD6HNQ_qdgxYP8yBZAdAIV1w'

la cadena de signos tiene una longitud de 28 (incluido ':') más la longitud de su cadena de correo electrónico. Para estar seguro, le sugiero que use Django TextField en lugar de CharField

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