Django - показать ссылку на скачивание файла на html-странице на основе последнего идентификатора - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть форма с полями и опция загрузки файла.Я показываю данные формы в представлении HTML, выбирая самую последнюю форму с последним идентификатором.однако ссылка на загруженный файл не работает.Есть ли что-то, что я все еще должен добавить к URL

Когда я нажимаю на ссылку, он говорит, что URL не найден

models.py

class Metadataform(models.Model):


    id = models.AutoField(primary_key=True)
    Name = models.CharField(max_length=500, blank=True, null=True)
    Document = models.FileField(upload_to='uploads/')

urls.py

  path('list/listdec/<int:pk>/', views.listdec, name='listdec'),

list.html


  <h2> {{c.id}} </h2>
  {% csrf_token %}
  <div class="panel panel-default">
 <div class="panel-body"> <p class="bold">Authors Name:</p>{{c.Authors_Name}} </div>
 <div class="panel-body"> <p class="bold">Dataset:</p> <a href="{{ c.Document.url }}" class="btn btn-primary btn-sm">{{ c.Document}}</a> </div>

views.py


def submission(request):

        Name = request.POST["Name"]

        if request.method == 'POST':
                form = Fileuploadform(request.POST, request.FILES)
                if form.is_valid():
                        form.save()

                        return render(request, "home.html")

        else:
                form = Fileuploadform()


view to show list.html

```python

def listdec (request, pk):
        c = Metadataform.objects.get(pk=pk)
        return render(request, "list.html",{'c': c})

...