我有一个在 Cent OS 上运行 MySQL DB 的 Django 1.5 站点,并且曾经有效的视图之一突然开始在此代码段上失败:
ipdb> Video.objects.create(owner=usr, category=category, status="processing", title=request.POST.get('title'))
*** IntegrityError: (1452, 'Cannot add or update a child row: a foreign key constraint fails (`project`.`videos_manager_video`, CONSTRAINT `category_id_refs_id_26102a51` FOREIGN KEY (`category_id`) REFERENCES `videos_manager_category (`id`))')
代码没有改变,数据库没有改变,我们运行了 mysqlcheck(它说所有表都正常),但这仍然爆炸。
当然,我们检查了category
,这是一个正确的类别对象,具有正确的 id。这样做:
Category.objects.get(id=cated.id)
返回相同的类别。
我们清除了缓存,以防万一,但仍然不行。
什么可能导致这种情况?什么会解决这个问题?