Django администратор не может отображать загруженные файлы по форме - PullRequest
0 голосов
/ 04 августа 2020

У меня есть модель, в которую я могу загружать файлы без проблем, и формы модели, которые загружают файл, которые отлично получают путь, когда я вызываю их в цикле html; но доступ к этим файлам через интерфейс администратора django недоступен. В двух случаях загруженные файлы могут попасть в определенные формы media_ root.

Что я делаю не так?

models.py

class Documentos(models.Model):
    user = models.OneToOneField(User, on_delete="models_CASCADE", null=True, blank=True)
    nome = models.CharField(max_length=200, default='Arquivo')
    documento = models.FileField(upload_to='')
    data = models.DateField(auto_now_add=True)
    formatado = models.BooleanField(default=False)

    class Meta:
        verbose_name = 'Documento'
        verbose_name_plural = 'Documentos'

    def __str__(self):
        return self.nome

. py

class DocumentosForm(forms.ModelForm):
    class Meta:
        model = Documentos
        fields = ['user','nome','documento']

views.py

from django.shortcuts import render
from django.contrib.auth.decorators import login_required
from django.core.files.storage import FileSystemStorage
from .forms import *
from .models import *


def alfa(request):
    return render(request, 'pdfupload.html')
# Create your views here.

@login_required(login_url='/register')
def upload(request):
    context = {}
    if request.method == 'POST':
        uploaded_file = request.FILES['document']
        fs = FileSystemStorage()
        name = fs.save(uploaded_file.name, uploaded_file)
        context['url'] = fs.url(name)
    return render(request, 'pdfupload.html', context)

def documentos_lista(request):
    return render(request, 'lista.html')

def upload_documento(request):
    return render(request, 'documento_upload.html')

forms. html:

<form method="post" enctype="multipart/form-data">
    {% csrf_token %}
    <input type="file" name="document" />
    <input type="submit" name="submit" value="Upload" />
</form>

У меня есть проект / urls.py:

...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Я использую django 2.1. Даже если я не могу получить загруженные файлы с помощью форм в django admin, сообщение об ошибке не возвращается. Я очень благодарен вам за помощь. Спасибо, хорошего дня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...