Джанго: Допустим, что только одно логическое поле соответствует действительности - PullRequest
5 голосов
/ 13 августа 2011

Имея такую ​​модель, я хочу убедиться, что только одна фотография для каждого альбома имеет обложку. Это будет использоваться как InlineModelAdmin для модели альбома.

class Photo(models.Model):
    is_cover = models.BooleanField( default=False)
    album = models.ForeignKey('Album')
    image = ImageField(upload_to='uploads')

Как этого достичь?

1 Ответ

5 голосов
/ 13 августа 2011

Какая фотография на обложке альбома должна быть свойством альбома, а не фото.

Вместо использования логического свойства в ваших фотографиях используйте ссылку наa фотография в вашем альбоме.

Ответ на комментарий: Предполагая, что «встроенная модель» означает то, что, как я предполагаю, будет в моем комментарии, вам, вероятно, придется предоставить свои добавить шаблон формы .Используя его, вы все равно можете предоставить поля параметров (вместо флажков), а затем правильно установить Album в коде, который обрабатывает содержимое отправленной формы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...