28👍
✅
Could it be as simple as the opening of the file. Since you opened the file in ‘wb+’ (write, binary, append) the handle is at the end of the file. try:
class UploadedFile(models.Model):
document = models.FileField(upload_to=PATH)
from django.core.files import File
doc = UploadedFile()
with open(filepath, 'rb') as doc_file:
doc.document.save(filename, File(doc_file), save=True)
doc.save()
Now its open at the beginning of the file.
1👍
For pdf files I used the receipt from django doc: https://docs.djangoproject.com/en/4.2/topics/files/
from pathlib import Path
from django.core.files import File
class Invoice(TimeStampedModel):
magnifinance_file = models.FileField(blank=True, null=True)
invoice = Invoice.objects.get(pk=1)
path = Path('/path_to_file/mf_invoice.pdf')
with path.open(mode="rb") as f:
invoice.magnifinance_file = File(f, name=path.name)
invoice.save()
- RuntimeError: Never call result.get() within a task Celery
- Sphinx-apidoc on django build html failure on `django.core.exceptions.AppRegistryNotReady`
- Finding a Python Library to Mock a Database
- How does django convert string to modules?
Source:stackexchange.com