/ Formátovanie dátumu v django - python, rubín na koľajniciach, rubín, django

Formátovanie dátumu v django - python, ruby ​​na koľajniciach, ruby, django

Ok, takže mám backend pre aplikáciu napísanú v rubíne na koľajniciach a práve som prepísal backend v pytóne pomocou django, ale nefunguje, pretože formát dátumu je iný.

takže vo formátoch vyzerá podobne

2015-01-14 05:14:44 UTC

a v pythone to vyzerá

2015-01-19T17:58:08.991Z

práve teraz mám model v django, ktorý vyzerá

date = models.DateTimeField()

teraz, keď som dostal modelobject.date to musí byť v rovnakom formáte ako v rubíne na koľajniciach ... Čo musím urobiť preformátovať dátum dátum?

odpovede:

0 pre odpoveď č. 1

Môžeš použiť strptime z datetime modul získať kompatibilný dátum dátumu z výsledku dotazu pomocou formátovacieho reťazca.

Takže by ste robili niečo ako:

from datetime import strptime

# ... your code ...

date = strptime(date, "%Y-%m-%d %H:%M:%S %Z")

Pokračujte v tejto kontrole na stránke strptime https://docs.python.org/2/library/datetime.html#datetime.datetime.strptime

Pozrite sa na to pre ďalšie možnosti formátovania: https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior


0 pre odpoveď č. 2

Na svojom modeli môžete vytvoriť metódy, ktoré konvertujú reťazec pomocou modulu datetime Pythonu:

import datetime

# ... model definition ...

def date_from_ruby_string(self, datestring):
"""set date field based on string in ruby format"""
self.date = datetime.strptime(datestring, "%Y-%m-%d %h-%M-%S UTC")

def ruby_string_from_date(self):
"""return string of date in ruby format"""
return self.date.strftime("%Y-%m-%d %h-%M-%S UTC")