Loading README.md +10 −3 Original line number Diff line number Diff line Loading @@ -9,13 +9,20 @@ ## Установка pip install -r requirements.txt manage.py migrate manage.py createsuperuser (admin:ma*ka) Внести изменения в settings.py ## Настраиваем ./sopds/settings.py SOPDS_ROOT_LIB = < Путь к каталогу с книгами > SOPDS_AUTH = < False | True > manage.py sopds --clear manage.py sopds --scan ## Готовим базу данных manage.py sopds_util --clear ## Вручную запускаем сканирование коллекции книг manage.py sopds_scanner --scan ## Запускаем http/opds сервер manage.py sopds_server start --daemon opds_catalog/management/commands/__pycache__/sopds_scanner.cpython-35.pyc 0 → 100644 +1.93 KiB File added.No diff preview for this file type. View file opds_catalog/management/commands/__pycache__/sopds_server.cpython-35.pyc −24 B (4.53 KiB) File changed.No diff preview for this file type. View original file View changed file opds_catalog/management/commands/__pycache__/sopds_util.cpython-35.pyc 0 → 100644 +1.38 KiB File added.No diff preview for this file type. View file opds_catalog/management/commands/sopds_scanner.py +16 −27 Original line number Diff line number Diff line import logging from django.core.management.base import BaseCommand, CommandError from django.core.management.base import BaseCommand from django.db import transaction from django.core.management import call_command from opds_catalog.models import Counter from opds_catalog.sopdscan import opdsScanner from opds_catalog import opdsdb, settings from opds_catalog import settings class Command(BaseCommand): help = 'Scan Books Collection.' Loading @@ -13,8 +12,6 @@ class Command(BaseCommand): def add_arguments(self, parser): parser.add_argument('--verbose',action='store_true', dest='verbose', default=False, help='Set verbosity level for books collection scan.') parser.add_argument('--scan',action='store_true', dest='scan', default=False, help='Scan book collection.') parser.add_argument('--clear',action='store_true', dest='clear', default=False, help='Clear opds database.') def handle(self, *args, **options): logger = logging.getLogger('') Loading @@ -38,21 +35,13 @@ class Command(BaseCommand): if options['scan']: self.stdout.write('Startup book-scan function.') self.scan(logger, options['verbose']) if options['clear']: self.stdout.write('Clear book database.') self.clear(options['verbose']) self.update_counters(logger) def scan(self, logger, verbose=False): scanner=opdsScanner(logger) with transaction.atomic(): scanner.scan_all() def update_counters(self, logger): Counter.objects.update_known_counters() def clear(self,verbose=False): opdsdb.clear_all() call_command('loaddata', 'genre.json', app_label='opds_catalog') Loading
README.md +10 −3 Original line number Diff line number Diff line Loading @@ -9,13 +9,20 @@ ## Установка pip install -r requirements.txt manage.py migrate manage.py createsuperuser (admin:ma*ka) Внести изменения в settings.py ## Настраиваем ./sopds/settings.py SOPDS_ROOT_LIB = < Путь к каталогу с книгами > SOPDS_AUTH = < False | True > manage.py sopds --clear manage.py sopds --scan ## Готовим базу данных manage.py sopds_util --clear ## Вручную запускаем сканирование коллекции книг manage.py sopds_scanner --scan ## Запускаем http/opds сервер manage.py sopds_server start --daemon
opds_catalog/management/commands/__pycache__/sopds_scanner.cpython-35.pyc 0 → 100644 +1.93 KiB File added.No diff preview for this file type. View file
opds_catalog/management/commands/__pycache__/sopds_server.cpython-35.pyc −24 B (4.53 KiB) File changed.No diff preview for this file type. View original file View changed file
opds_catalog/management/commands/__pycache__/sopds_util.cpython-35.pyc 0 → 100644 +1.38 KiB File added.No diff preview for this file type. View file
opds_catalog/management/commands/sopds_scanner.py +16 −27 Original line number Diff line number Diff line import logging from django.core.management.base import BaseCommand, CommandError from django.core.management.base import BaseCommand from django.db import transaction from django.core.management import call_command from opds_catalog.models import Counter from opds_catalog.sopdscan import opdsScanner from opds_catalog import opdsdb, settings from opds_catalog import settings class Command(BaseCommand): help = 'Scan Books Collection.' Loading @@ -13,8 +12,6 @@ class Command(BaseCommand): def add_arguments(self, parser): parser.add_argument('--verbose',action='store_true', dest='verbose', default=False, help='Set verbosity level for books collection scan.') parser.add_argument('--scan',action='store_true', dest='scan', default=False, help='Scan book collection.') parser.add_argument('--clear',action='store_true', dest='clear', default=False, help='Clear opds database.') def handle(self, *args, **options): logger = logging.getLogger('') Loading @@ -38,21 +35,13 @@ class Command(BaseCommand): if options['scan']: self.stdout.write('Startup book-scan function.') self.scan(logger, options['verbose']) if options['clear']: self.stdout.write('Clear book database.') self.clear(options['verbose']) self.update_counters(logger) def scan(self, logger, verbose=False): scanner=opdsScanner(logger) with transaction.atomic(): scanner.scan_all() def update_counters(self, logger): Counter.objects.update_known_counters() def clear(self,verbose=False): opdsdb.clear_all() call_command('loaddata', 'genre.json', app_label='opds_catalog')