Использование мастеров DjangoCMS без каталога временных файлов - PullRequest
0 голосов
/ 29 апреля 2020

Недавно я впервые попробовал создать собственный мастер. Это работает хорошо; Тем не менее, есть вопросы.

Есть ли способ запретить Мастеру нуждаться в каталоге "wizard_tmp_files" и загружать туда файлы? В нашей настройке мы используем AWS S3. Файлы загружаются туда, но их копии также остаются в "wizard_tmp_files", что раздражает, особенно если файлы большие. Интересно, есть ли способ вообще не использовать wizard_tmp_files.

Любая помощь или совет приветствуются.

Модель:

class Video(models.Model):
    title=models.CharField(max_length=500)
    description=models.TextField(default="")
    hash=models.CharField(max_length=10, default=_createHash, unique=True)
    creation_date=models.DateTimeField(default=timezone.now)
    videofile=models.FileField(upload_to='videos/', null=True, verbose_name="Video")
    poster=models.ImageField(upload_to='videos/thumbnails ', null=True, verbose_name="Poster")
    tags = TaggableManager()

Мастер CMS:

from django.utils.translation import override as force_language

from .forms import VideoForm

class VideoWizard(Wizard):
    def get_success_url(self, obj, **kwargs):
        """
        This should return the URL of the created object, «obj».
        """
        if 'language' in kwargs:
            with force_language(kwargs['language']):
                url = obj.get_absolute_url()
        else:
            url = obj.get_absolute_url()
        return url

video_wizard = VideoWizard(
    title="New Video",
    weight=200,
    form=VideoForm,
    description="Create a new video",
)

wizard_pool.register(video_wizard)
...