Как получить URL изображения, сохраненный в модели в представлениях - PullRequest
0 голосов
/ 26 марта 2020

Я хочу получить URL изображения, который успешно сохраняется в базе данных, используя models.py Теперь я хочу получить URL или местоположение изображения в строковой переменной в views.py

My models.py

class Document(models.Model):
    document_id = models.AutoField
    document_name = models.CharField(max_length=50, null=False, blank=False, default="")
    document_img = models.ImageField(upload_to='media', default="", blank=False, null=False)
    document_desc = models.CharField(max_length=500, default="", blank=False, null=False)
    document_date = models.DateField()

вот views.py

def upload(request):
    if request.method == 'POST' and request.FILES['doc_img']:
        document = Document()
        document.document_name = request.POST.get('doc_name')
        document.document_img = request.FILES['doc_img']
        document.document_desc = request.POST.get('doc_desc')
        document.document_date = request.POST.get('doc_date')
        document.save()
        doc = Document.objects.all()
        img_path = doc[0].document_img

        return HttpResponse(img_path) 

    else:
        return HttpResponse('Failed To Upload')

Я знаю, что мы можем показать изображение в шаблоне html с помощью

<img src='{{doc.0.document_img}}'>

, но я хочу его в python переменная

Может кто-нибудь помочь мне

Ответы [ 2 ]

1 голос
/ 26 марта 2020

Если вы хотите путь relative, просто выполните ...

img_path = doc[0].document_img.url

И для пути absolute ...

img_path = settings.MEDIA_URL + doc[0].document_img.url
1 голос
/ 26 марта 2020

Это должно сделать работу.

img_path = doc[0].document_img.url
...