В моих проектах используются три модели изображений. МоделиПредставлены разные модели, сгруппированные по двум общим полям
STAGE = [
('Initial', 'Initial'),
('Observation','Observation'),
('Initial', 'Initial')
('Progress','Progress'),
('Final', 'Final'),
('Post treatment','Post treatment'),
]
class Xray(models.Model):
date = models.DateTime()
desc = models.CharField(choices=XRAY, max_length=15)
stage = models.CharField(choices=STAGE, max_length=20)
image = models.ImageField(...)
class External(models.Model):
date = models.DateTime()
desc = models.CharField(choices=EXTERNAL, max_length=15)
stage = models.CharField(choices=STAGE, max_length=20)
image = models.ImageField(...)
class Internal(models.Model):
date = models.DateTime()
desc = models.CharField(choices=INTERNAL, max_length=15)
stage = models.CharField(choices=STAGE, max_length=20)
image = models.ImageField(...)
Я хочу, чтобы иметь возможность отображать эти три модели на моем шаблоне так:
Date:Stage
All pictures that have date = Date and stage=Stage
Как можно сгруппировать их, так что я могу на это? Как вы думаете, было бы лучше, если бы сцена была моделью сама по себе и быть иностранным ключом в каждом режиме изображения, а дата - полем сцены сцены?
class Internal(models.Model):
desc = models.CharField(choices=INTERNAL, max_length=15)
stage = models.CharField(choices=STAGE, max_length=20)
image = models.ImageField(...)
stage = models.ForeignKey(Stage)
class Stage(models.Model):
title = models.CharField(choices=STAGE, max_lenght=20)
date = models.DateTime()
Обратите внимание, что одна фотография может иметь только одну дату и быть на одном этапе (так может быть лучше в OneToOne поле?)
Как я буду группировать их так, как я хочу? – Apostolos
Этот способ создает две таблицы данных правильно? – Apostolos
, а затем я могу сделать Image.desc, чтобы получить описание каждого изображения? – Apostolos