mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-04-02 13:45:10 -05:00
fixes #130
This commit is contained in:
parent
1343e4c99f
commit
251fc582e9
@ -121,7 +121,11 @@ def generate_filename(doc, counter=0):
|
|||||||
added_month=doc.added.month if doc.added else "none",
|
added_month=doc.added.month if doc.added else "none",
|
||||||
added_day=doc.added.day if doc.added else "none",
|
added_day=doc.added.day if doc.added else "none",
|
||||||
tags=tags,
|
tags=tags,
|
||||||
)
|
tag_list=",".join([tag.name for tag in doc.tags.all()])
|
||||||
|
).strip()
|
||||||
|
|
||||||
|
path = path.strip(os.sep)
|
||||||
|
|
||||||
except (ValueError, KeyError, IndexError):
|
except (ValueError, KeyError, IndexError):
|
||||||
logging.getLogger(__name__).warning(
|
logging.getLogger(__name__).warning(
|
||||||
f"Invalid PAPERLESS_FILENAME_FORMAT: "
|
f"Invalid PAPERLESS_FILENAME_FORMAT: "
|
||||||
|
@ -13,7 +13,7 @@ from django.test import TestCase, override_settings
|
|||||||
from .utils import DirectoriesMixin
|
from .utils import DirectoriesMixin
|
||||||
from ..file_handling import generate_filename, create_source_path_directory, delete_empty_directories, \
|
from ..file_handling import generate_filename, create_source_path_directory, delete_empty_directories, \
|
||||||
generate_unique_filename
|
generate_unique_filename
|
||||||
from ..models import Document, Correspondent
|
from ..models import Document, Correspondent, Tag
|
||||||
|
|
||||||
|
|
||||||
class TestFileHandling(DirectoriesMixin, TestCase):
|
class TestFileHandling(DirectoriesMixin, TestCase):
|
||||||
@ -267,6 +267,26 @@ class TestFileHandling(DirectoriesMixin, TestCase):
|
|||||||
self.assertEqual(generate_filename(document),
|
self.assertEqual(generate_filename(document),
|
||||||
"none.pdf")
|
"none.pdf")
|
||||||
|
|
||||||
|
@override_settings(PAPERLESS_FILENAME_FORMAT="{title} {tag_list}")
|
||||||
|
def test_tag_list(self):
|
||||||
|
doc = Document.objects.create(title="doc1", mime_type="application/pdf")
|
||||||
|
doc.tags.create(name="tag2")
|
||||||
|
doc.tags.create(name="tag1")
|
||||||
|
|
||||||
|
self.assertEqual(generate_filename(doc), "doc1 tag1,tag2.pdf")
|
||||||
|
|
||||||
|
doc = Document.objects.create(title="doc2", checksum="B", mime_type="application/pdf")
|
||||||
|
|
||||||
|
self.assertEqual(generate_filename(doc), "doc2.pdf")
|
||||||
|
|
||||||
|
@override_settings(PAPERLESS_FILENAME_FORMAT="//etc/something/{title}")
|
||||||
|
def test_filename_relative(self):
|
||||||
|
doc = Document.objects.create(title="doc1", mime_type="application/pdf")
|
||||||
|
doc.filename = generate_filename(doc)
|
||||||
|
doc.save()
|
||||||
|
|
||||||
|
self.assertEqual(doc.source_path, os.path.join(settings.ORIGINALS_DIR, "etc", "something", "doc1.pdf"))
|
||||||
|
|
||||||
@override_settings(PAPERLESS_FILENAME_FORMAT="{correspondent}/{correspondent}/{correspondent}")
|
@override_settings(PAPERLESS_FILENAME_FORMAT="{correspondent}/{correspondent}/{correspondent}")
|
||||||
def test_nested_directory_cleanup(self):
|
def test_nested_directory_cleanup(self):
|
||||||
document = Document()
|
document = Document()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user