2016-12-25 5 views
-2

Как вы можете синхронизировать идентификаторы Django с Postgres без потери данных?Django Postgres objects.create ValidationError

Я каким-то образом получил Django в странное состояние, где я больше не могу создавать объекты. Вызов:

Chapter.objects.create(title = 'hello')

бросает ошибку:

Traceback (самый последний вызов в прошлом):

File "/usr/local/lib/python3.5/site-packages/django/db/backends/utils.py", line 64, in execute 
    return self.cursor.execute(sql, params) 
psycopg2.IntegrityError: duplicate key value violates unique constraint "genesis_chapter_pkey" 
DETAIL: Key (id)=(2) already exists. 

title не является уникальным полем. Как это вообще возможно? Я подозреваю, что Django вышел из синхронизации с Postgres и попытался назначить использованный идентификатор, но я не сделал ничего более особенного, чем звонить на objects.create. Я использовал только Django ORM. Как это могло заставить Django не синхронизироваться?

+0

'title' не единственное поле – Will

+0

Не могли бы вы предоставить свои модели? –

+0

Есть четыре модели. Вот вывод psql. https://drive.google.com/file/d/0B-lNrhyIv47CRGE4eXdqdFA2Vzg/view?usp=sharing – Will

ответ

0

попробовать

new_chapter = Глава (название = 'привет')

new_chapter.save()

+0

Такая же ошибка: 'django.db.utils.IntegrityError' – Will

+0

вы можете сделать« описать »'\ d chapter_chapters'? и сообщение, что здесь. также вы можете попробовать вставить значения chapter_chapters (title) ('hello'); –

Смежные вопросы