made scan_comics remove orphaned records in the db.

This commit is contained in:
ajurna@gmail.com
2016-05-03 16:34:41 +01:00
parent 21f4593a2d
commit b61b4595a7

View File

@@ -1,10 +1,10 @@
import os
from os.path import isdir
from django.core.management.base import BaseCommand from django.core.management.base import BaseCommand
from comic.models import Setting, Directory, ComicBook from comic.models import Setting, Directory, ComicBook
import os
from os.path import isdir
class Command(BaseCommand): class Command(BaseCommand):
help = 'Scan directories to Update Comic DB' help = 'Scan directories to Update Comic DB'
@@ -26,6 +26,13 @@ class Command(BaseCommand):
comic_dir = self.base_dir comic_dir = self.base_dir
else: else:
comic_dir = os.path.join(self.base_dir, directory.path) comic_dir = os.path.join(self.base_dir, directory.path)
if directory:
books = ComicBook.objects.filter(directory=directory)
else:
books = ComicBook.objects.filter(directory__isnull=True)
for book in books:
if not os.path.isfile(os.path.join(comic_dir, book.file_name)):
book.delete()
for file in os.listdir(comic_dir): for file in os.listdir(comic_dir):
if isdir(os.path.join(comic_dir, file)): if isdir(os.path.join(comic_dir, file)):
if directory: if directory: