Форум сайта python.su
Здравствуйте!
Создаю модель.
from django.db import models
class Peoples(models.Model): # Режиссеры/Сценаристы
name = models.CharField(max_length=100)
class Movie(models.Model):
title = models.CharField(max_length=100)
director = models.ForeignKey(Peoples) # Режиссер
screenwriter = models.ForeignKey(Peoples) # Сценарист
python manage.py validate
Error: One or more models did not validate:
movies.movie: Accessor for field 'director' clashes with related field 'Peoples.
movie_set'. Add a related_name argument to the definition for 'director'.
movies.movie: Accessor for field 'screenwriter' clashes with related field 'Peop
les.movie_set'. Add a related_name argument to the definition for 'screenwriter'
.
Офлайн
Это заморочка с обратными связями
Как и подсказывает ошибка - назначьте им разные related_name, и все должно заработать.
director = models.ForeignKey(Peoples, related_name='directors') # Режиссер
screenwriter = models.ForeignKey(Peoples, related_name='screenwriters')
Отредактировано (Июнь 21, 2011 21:23:44)
Офлайн
Спасибо, помогло.
Даже и не знал о существовании related_name, потому и не понял текст ошибки.
Офлайн