Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

255
Visualizações
Cómo formatear fecha y hora en una cadena tal como lo hace Django

Tengo un DatetimeField que destaco en el administrador de django en función de la antigüedad en comparación con ahora ().

 def valid_up_to_column(self): now = datetime.datetime.now(datetime.timezone.utc) delta = (now - self.valid_up_to).seconds if delta > 900: colour = '#FF0000' # red else: return self.valid_up_to return format_html('<span style="background-color: {}">{}</span>', colour, self.valid_up_to)

Cuando se usa format_html, la fecha y hora se representa como formato UTC 2017-01-01 00:00+00:00 sin procesar, pero para el otro caso, la configuración regional de Django se hace cargo y la formatea según la configuración regional, por ejemplo, 1 de enero de 2017, medianoche.

¿Cómo puedo formatear la fecha y hora para que tenga el mismo formato que Django antes de pasarla a format_html() ?

Intenté usar strftime (settings.DATETIME_FORMAT) pero este es el django DATETIME_FORMAT, no es lo mismo que el formato de cadena de Python.

about 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Entendido, hay una función de formato útil, solo pásele la configuración DATETIME_FORMAT, por lo que si no está configurada, el formato L10N lo tomará desde aquí.

 from django.utils.dateformat import format datetime_str = format(self.valid_up_to, settings.DATETIME_FORMAT)
about 4 years ago · Santiago Trujillo Relatório

0

La misma función podría usarse para dar formato a los valores de fecha, fecha y hora:

 from django.utils.formats import localize formatted_value = localize(value)

Parte relacionada con la fecha y hora de la función localize() :

 def localize(value, use_l10n=None): ... elif isinstance(value, datetime.datetime): return date_format(value, 'DATETIME_FORMAT', use_l10n=use_l10n) elif isinstance(value, datetime.date): return date_format(value, use_l10n=use_l10n) elif isinstance(value, datetime.time): return time_format(value, 'TIME_FORMAT', use_l10n=use_l10n) ...
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda