Ошибка syncdb в Django: одна или несколько моделей не прошли проверку - PullRequest
6 голосов
/ 09 апреля 2010

/ MySite / проекта4

 class notes(models.Model):
   created_by = models.ForeignKey(User)
   detail = models.ForeignKey(Details) 

Детали и пользователь находятся в одном модуле, т.е. / mysite / project1 В моделях проекта1 я определил

   class User():
      ......

   class Details():
      ......

Когда синхронизирую БД, возникает ошибка:

Error: One or more models did not validate: project4: Accessor for field 'detail' clashes with related field . Add a related_name argument to the definition for 'detail'.

Как это можно решить ..

спасибо ..

1 Ответ

8 голосов
/ 09 апреля 2010

Ну и дела, у нас только что был этот; и я ответил ...

У вас есть несколько внешних ключей, для которых django не может сгенерировать уникальные имена.

Вы можете помочь, добавив аргументы «related_name» в определения полей Foreignkey в своих моделях. Например:

 class notes(models.Model):
    created_by = models.ForeignKey(User, related_name="note_created_by_user")
    detail = models.ForeignKey(Details, related_name="noted_and_detailed")

Подробнее здесь. http://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.ForeignKey.related_name

...