Форум сайта python.su
Есть две модели:
Модель1
Модель2
У обоих есть поле ForeignKey. В Модель1 оно ссылается на Модель2, а в Модель2 на Модель1. Но, Модель1 не видит Модель2. Как можно исправить?)
Офлайн
related_name не помогает?
Офлайн
Нет. Или я не так делаю. Вот код:
class PhotoAlbum(models.Model): title = models.CharField(max_length = 255) owner = models.ForeignKey(User) cover = models.ForeignKey(AlbumPhoto, related_name="cover") class AlbumPhoto(models.Model): album = models.ForeignKey(PhotoAlbum, null=True, blank=True) photo = models.ImageField(upload_to='albums/', verbose_name=u'Фотография', null=True, blank=True) photo_s = models.ImageField(upload_to='albums/', null=True, blank=True) description = models.TextField() owner = models.ForeignKey(User) on_main = models.BooleanField()
Офлайн
Вам жиж подсказали где копать.
Выкиньте вообще в альбоме cover = models.ForeignKey(AlbumPhoto, related_name=“cover”)
В фотках album = models.ForeignKey(PhotoAlbum, null=True, blank=True, related_name=“photos”)
у альбома в .photos_set.all() будут все фотки.
Похоже у Вас не очень правильно спроектировано еще, судя по всему Вы так пытались решить какая картинка будет обложкой альбома.
Ну сделайте например у фотки is_cover - BooleanField
Офлайн
nnmwareДа, такое решение рассматривал, но подумал, что сабж получше будет. Оказалось что нет :)
Ну сделайте например у фотки is_cover - BooleanField
Офлайн