I had an application that was working nicely using a User class that I had defined. After working on this for a few weeks, I realized I needed user authentication, and decided to use django's User class instead (I didn't really understand how this worked when I started, as I'm very new to Django). I got rid of my ForeignKey relation to my custom User class, and added a ForeignKey relation to django.contrib.auth.models.User
, however now when I use the Admin page to add a new object, I get:
Exception Type: IntegrityError at /admin/po/purchaseorder/add/
Exception Value: (1452, 'Cannot add or update a child row: a foreign key constraint fails (`po`.`po_purchaseorder`, CONSTRAINT `django_user_id_refs_id_fe5f38af` FOREIGN KEY (`django_user_id`) REFERENCES `auth_user` (`id`))')
I really don't understand this error. Here's the relevant class code:
from django.contrib.auth.models import User
class PurchaseOrder(models.Model):
user=models.ForeignKey(User)
request_number = models.AutoField(primary_key=True)
#More fields
Can anyone give me any explanation about this error, and why I'm getting it now that I'm using the built in User, as opposed to my own class?