도움말! 이걸 알아낼 수 없어요! 기본 매개 변수가 설정된 경우에도 get_or_create에서 무결성 오류가 발생합니다.Django get_or_create raise 기본 키와 중복되는 항목
다음은 모델의 외형을 벗겨내는 방법입니다.
class Example(models.Model):model
user = models.ForeignKey(User)
text = models.TextField()
def __unicode__(self):
return "Example"
내가 장고에이 실행
def create_example_model(user, textJson):
defaults = {text: textJson.get("text", "undefined")}
model, created = models.Example.objects.get_or_create(
user=user,
id=textJson.get("id", None),
defaults=defaults)
if not created:
model.text = textJson.get("text", "undefined")
model.save()
return model
나는 get_or_create 줄에 오류를 받고 있어요 :
IntegrityError: (1062, "Duplicate entry '3020' for key 'PRIMARY'")
그것은 라이브입니다 그래서 난 정말 어떤 입력을 말할 수 없다 입니다.
도움 말? 실제로는 기본값이 설정되어 있으므로 기본값이 아닌이 문제는 아닙니다. 게다가 독특한 것은 아닙니다. Django : get_or_create Raises duplicate entry with together_unique
저는 파이썬 2.6과 mysql을 사용하고 있습니다.
id는 이미 존재하는 경우에만 설정됩니다. id가 null이면 데이터베이스에서 자동으로 생성됩니다 (자동 증가). 적어도 그것이 내가 이해 한 것입니다. – Kenneth