Как сделать загрузку изображения по URL в Django?

Добрый день, мне необходимо реализовать форму загрузки файлов, где можно загрузить файл либо с компьютера, либо по URL в Django.
Мне удалось реализовать загрузку с компьютера, но я не понимаю как сделать через URL.
Направьте пожалуйста.

forms.py
class ImageForm(ModelForm):

    class Meta:
        model = Images
        fields = ['image', 'url']


models.py
class Images(models.Model):

    image = models.ImageField(
        verbose_name='Image file',
        unique=True
    )

    url = models.URLField(
        unique=False,
        blank=True
    )


views.py
class UploadView(View):
    def get(self, request):

        form = ImageForm()

        context = {
            'form': form
        }

        return render(request, 'upload.html', context)

    def post(self, request):

        form = ImageForm(request.POST, request.FILES)
        context = {
            'form': form
        }

        if form.is_valid():
            form.save()
            return HttpResponseRedirect("/")
        else:
            render(request, 'upload.html', context=context)


Сейчас страничка выглядит так с этим кодом.
5e2c1c9021c98639186888.png
  • Вопрос задан
  • 335 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы