0

I have a python function that reads data from a javascript file :

def eventsdrag(request):

try:
    
    try:
        untitre = request.GET.get('title')
       
    except:
        untitre = None
try:
        debut = float(request.GET.get('start'))
        debut = datetime.datetime.fromtimestamp(debut)
except:
        debut = None
 try:
        lafin = float(request.GET.get('end'))
        lafin = datetime.datetime.fromtimestamp(lafin)
except:
        lafin = None

I display:

debut 2016-02-09 00:00:00

lafin 2016-02-16 00:00:00

I want to save debut and lafin in the database.

My model:

class Event(models.Model):
    title = models.CharField(_(u"Nom de l'étude"), max_length=100)
    start = models.DateTimeField(_(u"début"))
    end = models.DateTimeField(_('fin'))
    ...

If I write in the function

try:
    p = Event(title= untitre, start=debut, end=lafin)
    p.save(force_insert=True)

I have the error :

RuntimeWarning: DateTimeField received a naive datetime (2016-02-16 00:00:00) while time zone support is active

Is it the solution to write ? :

debut = debut.astimezone(timezone.get_default_timezone())
lafin = lafin.astimezone(timezone.get_default_timezone())
Community
  • 1
  • 1
Patrice
  • 209
  • 1
  • 4
  • 15

1 Answers1

0

Try to use the datetime class from django.utils.timezone instead of the native datetime. Or you may disable the timezone in your settings. (here is the doc: https://docs.djangoproject.com/es/1.9/topics/i18n/timezones/)

mille_a
  • 121
  • 8
  • I put TIME_ZONE = None in the setting file and no change – Patrice Feb 10 '16 at 11:28
  • tz = pytz.timezone("Europe/Paris") debut = datetime.datetime.fromtimestamp(debut, tz) but i can not save debut with p = Event(debut..) and p.save() what is the problem with pytz ? – Patrice Feb 15 '16 at 11:52