Как загрузить изображение/pdf шаблоны Django
<<<0><0>Как я могу загрузить изображение или pdf из моих шаблонов Django? Когда я загружаю pdf, он открывается в другой вкладке, и то же самое, когда я пытаюсь загрузить изображение.models.py
from django.utils import timezone
from django.db import models
from django.core.validators import FileExtensionValidator
import uuid
# Create your models here.
class Imagenes(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
image = models.FileField(verbose_name='Imagenes' ,upload_to='imagenes', validators=[FileExtensionValidator(allowed_extensions=['jpg', 'jpeg', 'png'])])
fecha_subida = models.DateTimeField(default=timezone.now)
class Meta:
verbose_name = "Imagenes"
views.py
def imagelinks(request, id):
imagen = get_object_or_404(models.Imagenes, id=id)
descarga = models.Imagenes.objects.filter(id=id)
data = {"formu":UploadImageForm(instance=imagen), 'descargas':descarga}
return render(request, 'imagenes/linkimagenes.html', data)
urls.py
from django.urls import path
from imagenes import views
urlpatterns = [
path('downloadi/<id>/', views.imagelinks, name="imagenlinks"),
path('imagenes/', views.SubirImage, name="imagenes")
]
шаблон
{% extends 'base/base.html' %}
{% block title %} {% endblock %}
{% block header %}
<h3 class="float-md-start mb-0"><a href="{% url 'home' %}">Archinon</a></h3>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link fw-bold py-1 px-0" href="{% url 'archivos' %}">Archivos</a>
<a class="nav-link fw-bold py-1 px-0" href="{% url 'imagenes' %}">Imagenes</a>
<a class="nav-link fw-bold py-1 px-0" href="{% url 'videos' %}">Videos</a>
</nav>
{% endblock %}
{% block content %}
<main class="px-10">
<h2>¡Descarga tu Imagen! </h2>
{% load archivo_tags %}
{% for file in descargas %}
<a>{{file.image}}</a>
<a href="{{ file.image.url }}" class="btn btn-primary btn-sm" role="button">Download ({{ file.image.size|sizify }})</a>
<h5>No olvide guardar su link:</h5>
<div class="alert alert-light" role="alert">
<a href="{% url 'archilinks' file.id %}" class="alert-link">127.0.0.1:8000{% url 'archilinks' file.id %}</a>
</div>
{% endfor%}
</main>
{% endblock %}
<<1><1>>Экран загрузки изображения (а также pdf) <<2><2><><3><3>>>
введите описание изображения здесь