Loading README.md +8 −0 Original line number Diff line number Diff line Loading @@ -250,6 +250,14 @@ MySQL по сравнению с sqlite работает гораздо быст python3 manage.py sopds_util clear [--verbose] Сохранить свой справочник жанров в файл opds_catalog/fixtures/mygenres.json: python3 manage.py sopds_util save_mygenres Загрузить свой справочник жанров из файла opds_catalog/fixtures/mygenres.json: python3 manage.py sopds_util load_mygenres Если вы используете MySQL и при очистке БД у вас возникла ошибка (2006, 'MySQL server has gone away'), то добавьте в файл настройки /etc/my.cnf следующие настройки, после чего перезапустите сервер БД: Loading opds_catalog/fixtures/mygenres.json 0 → 100644 +1 −0 File added.Preview size limit exceeded, changes collapsed. Show changes opds_catalog/management/commands/sopds_util.py +16 −2 Original line number Diff line number Diff line Loading @@ -11,7 +11,7 @@ class Command(BaseCommand): verbose = False def add_arguments(self, parser): parser.add_argument('command', help='Use [ clear | info ]') parser.add_argument('command', help='Use [ clear | info | save_mygenres | load_mygenres ]') parser.add_argument('--verbose',action='store_true', dest='verbose', default=False, help='Set verbosity level for books collection scan.') parser.add_argument('--nogenres',action='store_true', dest='nogenres', default=False, help='Not install genres fom fixtures.') Loading @@ -26,6 +26,10 @@ class Command(BaseCommand): self.clear() elif action == "info": self.info() elif action == "save_mygenres": self.save_mygenres() elif action == "load_mygenres": self.load_mygenres() def clear(self): with transaction.atomic(): Loading @@ -42,4 +46,14 @@ class Command(BaseCommand): self.stdout.write('Genres count = %s'%Counter.objects.get_counter(models.counter_allgenres)) self.stdout.write('Series count = %s'%Counter.objects.get_counter(models.counter_allseries)) def save_mygenres(self): call_command('dumpdata', 'opds_catalog.genre','--output','opds_catalog/fixtures/mygenres.json', app_label='opds_catalog') self.stdout.write('Genre dump saved in opds_catalog/fixtures/mygenres.json') def load_mygenres(self): opdsdb.clear_genres(self.verbose) call_command('loaddata', 'mygenres.json', app_label='opds_catalog') Counter.objects.update_known_counters() self.stdout.write('Genres load from opds_catalog/fixtures/mygenres.json') opds_catalog/opdsdb.py +4 −1 Original line number Diff line number Diff line Loading @@ -54,6 +54,9 @@ def clear_all(verbose=False): cursor.execute('delete from opds_catalog_bookshelf') cursor.execute('delete from opds_catalog_counter') def clear_genres(verbose=False): cursor = connection.cursor() cursor.execute('delete from opds_catalog_genre') # Книги где avail=0 уже известно что удалены # Книги где avail=2 это только что прверенные существующие книги Loading sopds/settings.py +1 −1 Original line number Diff line number Diff line Loading @@ -207,7 +207,7 @@ SOPDS_ROOT_LIB = 'W:\\_Downloads\\_Lib.rus.ec - Официальная\\lib.rus. SOPDS_AUTH = True SOPDS_SCAN_SHED_MIN ='0' SOPDS_SCAN_SHED_HOUR ='0,12' SOPDS_INPX_ENABLE = False SOPDS_INPX_ENABLE = True #Конвертеры EPUB и MOBI #SOPDS_FB2TOEPUB = os.path.join(BASE_DIR,'convert/fb2toepub/unix_dist/fb2toepub') Loading Loading
README.md +8 −0 Original line number Diff line number Diff line Loading @@ -250,6 +250,14 @@ MySQL по сравнению с sqlite работает гораздо быст python3 manage.py sopds_util clear [--verbose] Сохранить свой справочник жанров в файл opds_catalog/fixtures/mygenres.json: python3 manage.py sopds_util save_mygenres Загрузить свой справочник жанров из файла opds_catalog/fixtures/mygenres.json: python3 manage.py sopds_util load_mygenres Если вы используете MySQL и при очистке БД у вас возникла ошибка (2006, 'MySQL server has gone away'), то добавьте в файл настройки /etc/my.cnf следующие настройки, после чего перезапустите сервер БД: Loading
opds_catalog/fixtures/mygenres.json 0 → 100644 +1 −0 File added.Preview size limit exceeded, changes collapsed. Show changes
opds_catalog/management/commands/sopds_util.py +16 −2 Original line number Diff line number Diff line Loading @@ -11,7 +11,7 @@ class Command(BaseCommand): verbose = False def add_arguments(self, parser): parser.add_argument('command', help='Use [ clear | info ]') parser.add_argument('command', help='Use [ clear | info | save_mygenres | load_mygenres ]') parser.add_argument('--verbose',action='store_true', dest='verbose', default=False, help='Set verbosity level for books collection scan.') parser.add_argument('--nogenres',action='store_true', dest='nogenres', default=False, help='Not install genres fom fixtures.') Loading @@ -26,6 +26,10 @@ class Command(BaseCommand): self.clear() elif action == "info": self.info() elif action == "save_mygenres": self.save_mygenres() elif action == "load_mygenres": self.load_mygenres() def clear(self): with transaction.atomic(): Loading @@ -42,4 +46,14 @@ class Command(BaseCommand): self.stdout.write('Genres count = %s'%Counter.objects.get_counter(models.counter_allgenres)) self.stdout.write('Series count = %s'%Counter.objects.get_counter(models.counter_allseries)) def save_mygenres(self): call_command('dumpdata', 'opds_catalog.genre','--output','opds_catalog/fixtures/mygenres.json', app_label='opds_catalog') self.stdout.write('Genre dump saved in opds_catalog/fixtures/mygenres.json') def load_mygenres(self): opdsdb.clear_genres(self.verbose) call_command('loaddata', 'mygenres.json', app_label='opds_catalog') Counter.objects.update_known_counters() self.stdout.write('Genres load from opds_catalog/fixtures/mygenres.json')
opds_catalog/opdsdb.py +4 −1 Original line number Diff line number Diff line Loading @@ -54,6 +54,9 @@ def clear_all(verbose=False): cursor.execute('delete from opds_catalog_bookshelf') cursor.execute('delete from opds_catalog_counter') def clear_genres(verbose=False): cursor = connection.cursor() cursor.execute('delete from opds_catalog_genre') # Книги где avail=0 уже известно что удалены # Книги где avail=2 это только что прверенные существующие книги Loading
sopds/settings.py +1 −1 Original line number Diff line number Diff line Loading @@ -207,7 +207,7 @@ SOPDS_ROOT_LIB = 'W:\\_Downloads\\_Lib.rus.ec - Официальная\\lib.rus. SOPDS_AUTH = True SOPDS_SCAN_SHED_MIN ='0' SOPDS_SCAN_SHED_HOUR ='0,12' SOPDS_INPX_ENABLE = False SOPDS_INPX_ENABLE = True #Конвертеры EPUB и MOBI #SOPDS_FB2TOEPUB = os.path.join(BASE_DIR,'convert/fb2toepub/unix_dist/fb2toepub') Loading