Это как django наследует одну таблицу? - PullRequest
3 голосов
/ 09 июня 2011

В этот вопрос SO Я вижу следующее:

class MediaContent(models.Model):
    uploader = models.ForeignKey(User)
    title = models.CharField(max_length=100)
    created = models.DateTimeField(auto_now_add=True)

    def draw_item(self):
        pass

    class Meta:
        abstract = True

class Picture(MediaContent):
    picture = models.ImageField(upload_to='pictures')

class Video(MediaContent):
    identifier = models.CharField(max_length=30) #youtube id

Я уже делал некоторые STI в Rails, но никогда в django.Это как это делается в Джанго?Будет ли создана только одна таблица со всеми полями во всех моделях?Будет ли добавлен столбец типа?

Ответы [ 2 ]

4 голосов
/ 12 июня 2011

К сожалению, Django не поддерживает наследование одной таблицы: Наследование одной таблицы в Django

3 голосов
/ 09 июня 2011

Будет создано две таблицы: одна для изображения и одна для видео.Невозможно создать запрос, который возвращает оба типа.

"Абстрактные базовые классы"

...