from django.core.management.base import BaseCommand from users.models import License class Command(BaseCommand): help = """ Overwrites the License model's IBAN with the IBAN from the hep-JSON """ def add_arguments(self, parser): parser.add_argument('--dry-run', action='store_true', dest='dry_run', default=False, help='Make dry-run') def handle(self, *args, **options): for license in License.objects.all(): isbn = license.get_hep_isbn() if isbn == license.isbn: continue print(f'Setting ISBN for licenseID {license.id} from {license.isbn} to {isbn}') if not options['dry_run']: license.isbn = isbn license.save()