model example
class Example(Stat): numeric = models.IntegerField(...) date = models.DateField( auto_now_add=True,...) #auto_now_add=True was the problem class Meta: unique_together = ('numeric','date')
)
If 72 and '2011-08-07' is already stored
Example.object.get_or_create(numeric=72,date='2011-08-07')
raises
django.db.utils.IntegrityError: (1062, "Duplicate entry '72-2011-08-07'
the question is why get_or_create
raises the IntegrityError
, thats the idea of using get_or_create
.
Not sure if this is a bug, I opened a ticket https://code.djangoproject.com/ticket/16587
It appears your problem is with there being more columns you're not including in your get_or_create
, see i.e. this thread on a Django mailing list.
You need to use the defaults
parameter of get_or_create
as described in the docs, or specify values for all columns, for get_or_create
to match correctly.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With