@DarkByte2015

Как в админке сделать добавление одной модели из другой?

У меня есть связанные модели (через FK) и мне надо сделать в админке добавление одной модели из другой. И то что там по умолчанию есть плюсик для этого - не подходит. Как мне это кастомизировать? В одной модели есть всего одно поле - изображение (загружается как раз там же в админке). Может добавлю что-то еще потом, но пока только одно. А другая связана с ней и у нее много разных атрибутов... Короче вот код:

class CertificateTemplate(models.Model):
    image = models.ImageField('Изображение')

    class Meta:
        db_table = 'certificate_templates'
        verbose_name = 'шаблон сертификата'
        verbose_name_plural = 'Шаблоны сертификатов'


class CertificateTemplateLabel(models.Model):
    description = models.CharField(max_length=50, verbose_name='Описание')
    template = models.ForeignKey(CertificateTemplate, models.CASCADE, related_name='labels', verbose_name=CertificateTemplate._meta.verbose_name)
    text_length_min = models.PositiveIntegerField('Минимальная длина')
    text_length_max = models.PositiveIntegerField('Максимальная длина')
    location_x = models.IntegerField('Горизонтальная координата')
    location_y = models.IntegerField('Вертикальная координата')
    font = models.ForeignKey(Font, models.CASCADE, related_name='+', verbose_name=Font._meta.verbose_name)
    font_size = models.PositiveIntegerField('Размер шрифта')
    font_color = models.CharField('Цвет шрифта', max_length=7)

    def __str__(self):
        return self.description

    class Meta:
        db_table = 'certificate_template_labels'
        verbose_name = 'Метка шаблона сертификата'
        verbose_name_plural = 'Метки шаблонов сертификатов'


Идея такая: после загрузки изображения оно должно отобразиться на странице (там же в админке) и на нем с помощью например этой штуки можно выбрать области которые будут метками. Их координаты должны занестись в поля меток которые будут тут же. Также там можно будет выбрать и остальные параметры меток. Подскажите хоть примерно как это туда прикрутить? Виджеты? Мне надо для этого менять шаблоны админки или можно обойтись тщательным конфигурированием через ModelForm, ModelAdmin?

Схематично примерно так я это представляю:

5a3cacb666d27436043822.png
  • Вопрос задан
  • 223 просмотра
Пригласить эксперта
Ответы на вопрос 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы