#29424: Datetime objects parsed as strings when signals used - Django 1.9.5
-------------------------------------+-------------------------------------
Reporter: Adrian | Owner: nobody
Castellanos |
Type: Bug | Status: new
Component: | Version:
Uncategorized |
Severity: Normal | Keywords: signals model
Triage Stage: | Has patch: 0
Unreviewed |
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
-------------------------------------+-------------------------------------
I found a strange behavior when accesing objects models using signals. The
model is declared as:
{{{
class Campaign(models.Model):
start_stay_date = models.DateTimeField(null=True, blank=True)
end_stay_date = models.DateTimeField(null=True, blank=True)
}}}
When I use signals to connect the changes of the model with a function, a
found that the instance that is passed as argument has strings instead of
datetime in the dates:
The code of the conection between the model and the function is:
{{{
def export_campaign_to_mongo(sender, instance, *args, **kwargs):
check_dates()
post_save.connect(export_campaign_to_mongo, Campaign)
}}}
This is the output of the console checking the types of the objects:
{{{
>>>type(instance)
<class 'campaigns.models.Campaign'>
>>>instance.start_date
'2018-04-11T00:00:00'
>>>from campaigns.models import Campaign
>>>Campaign.objects.first().start_date
datetime.datetime(2016, 10, 10, 0, 0)
}}}
I am using Django v1.9.5.
--
Ticket URL: <https://code.djangoproject.com/ticket/29424>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/053.c8aa7f8b868c6ccd2884d2a3900209c7%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.