From 8fa724e848dc33736e9902cb81516f5a1bd8149d Mon Sep 17 00:00:00 2001 From: Yohann D'ANELLO Date: Fri, 2 Oct 2020 16:43:04 +0200 Subject: [PATCH] Allow to have a R in front of subtitles --- media/forms.py | 1 + media/management/commands/regenerate_side_identifiers.py | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/media/forms.py b/media/forms.py index 0736c1b..fe77bfd 100644 --- a/media/forms.py +++ b/media/forms.py @@ -59,6 +59,7 @@ def generate_side_identifier(title, authors, subtitle=None): subtitle = re.sub(r'', '', subtitle) subtitle = re.sub(r'', '', subtitle) start = subtitle.split(' ')[0].replace('.', '') + start = re.sub("^R?", "", start) if start.isnumeric(): side_identifier += " {:0>2}".format(start, ) diff --git a/media/management/commands/regenerate_side_identifiers.py b/media/management/commands/regenerate_side_identifiers.py index a659840..c604b7f 100644 --- a/media/management/commands/regenerate_side_identifiers.py +++ b/media/management/commands/regenerate_side_identifiers.py @@ -12,8 +12,10 @@ class Command(BaseCommand): default='bd', choices=['bd', 'manga', 'roman'], help="Type of medium where the sides need to be regenerated.") - parser.add_argument('--noninteractivemode', '-n', action="store_true", + parser.add_argument('--noninteractivemode', '-ni', action="store_true", help="Disable the interaction mode and replace existing side identifiers.") + parser.add_argument('--no-commit', '-nc', action="store_true", + help="Only show modifications, don't commit them to database.") @transaction.atomic def handle(self, *args, **options): @@ -47,7 +49,8 @@ class Command(BaseCommand): self.stdout.write(self.style.WARNING(f"Replace side of {obj} from {current_side_identifier} " f"to {generated_side_identifier}...")) obj.side_identifier = generated_side_identifier - obj.save() + if not options["no_commit"]: + obj.save() replaced += 1 if replaced: