У меня есть случай, когда пользователи загружают файлы, и каждый файл имеет определенные атрибуты. Часто может быть 10 файлов, которые необходимо загрузить в базу данных с такими же атрибутами. Чтобы сэкономить время, было бы неплохо позволить пользователю выбрать все десять файлов и добавить в базу данных 10 записей, по одной записи на файл. Мои модели похожи на приведенный ниже пример:
class ContentCategory(models.Model):
name = models.CharField(max_length=100)
class Document(models.Model):
file_name = models.CharField(max_length=100, blank=True)
note = models.TextField(null=True, Blank=True)
content_category = models.ForeignKey(ContentCategory, on_delete=models.PROTECT)
document = models.FileUpload(upload_to=f'{content_category}/')
def save(self):
self.file_name = os.path.basename(self.document.name)
super(Document, self).save()
Мой admin.py прост, как в приведенном ниже коде:
class DocumentAdmin(admin.ModelAdmin):
exclude = ('file_name',)
admin.site.register(Document, DocumentAdmin)
admin.site.register(ContentCategory)
Так что вот точный сценарий, который часто случается. Необходимо загрузить 10 фотографий, и все они будут иметь одинаковую категорию контента и примечание. Есть ли способ настроить администратора, чтобы позволить кому-то выбрать правильную категорию контента и написать заметку, а затем выбрать все 10 файлов для загрузки и создать 10 записей в таблице документов после сохранения? Один на каждую фотографию?