2012-07-19 7 views
9

Django podaje mi ostrzeżenia o uruchomieniu (na kodzie, którego nie napisałem).Django: jak uzyskać ślady stosu dla ostrzeżeń runtime

Jak mogę sprawić, że Django przekaże mi stos dokumentów, więc widzę, co powoduje te problemy?

/usr/local/lib/python2.7/dist-packages/django/db/models/fields/__init__.py:808: 
RuntimeWarning: DateTimeField received a naive datetime (2012-07-19 09:36:16.161479) 
while time zone support is active. 
    RuntimeWarning 
+1

Czy moja odpowiedź odpowiedzieć na to pytanie? – dalore

+0

Hej o zaakceptowaniu przynajmniej odpowiedzi. – dalore

+0

Cześć, przepraszam, dopiero co widziałem twoją odpowiedź. – fadedbee

Odpowiedz

-3

źródło Django powie, co się stało:

def get_prep_value(self, value): 
    value = self.to_python(value) 
    if value is not None and settings.USE_TZ and timezone.is_naive(value): 
     # For backwards compatibility, interpret naive datetimes in local 
     # time. This won't work during DST change, but we can't do much 
     # about it, so we let the exceptions percolate up the call stack. 
     warnings.warn(u"DateTimeField received a naive datetime (%s)" 
         u" while time zone support is active." % value, 
         RuntimeWarning) 
     default_timezone = timezone.get_default_timezone() 
     value = timezone.make_aware(value, default_timezone) 
    return value 
+1

Dzięki, ale ja to wiem. Szukam przyczyny ostrzeżenia o uruchomieniu. To nie jedyny ... – fadedbee

-2

Oznacza to, że włączona obsługę strefy czasowej w Django; ale przekazałeś mu obiekt datetime, do którego nie są dołączone informacje o strefie czasowej.

Jeśli chcesz korzystać z strefy czasowej Django, używane obiekty datetime powinny być świadome stref czasowych.

Urządzenie documentation on timezone support umożliwia przekształcenie obiektów typu data-godzina w obiekty ze strefami czasowymi.

+1

Dzięki, ale ja to wiem. Szukam przyczyny ostrzeżenia o uruchomieniu. To nie jedyny ... – fadedbee