X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/f714cce8fd2f04693a118b05c0f9432a70d1bef7..7fc1680165d8334dcac541883b03776082b80ad5:/catalogue/management/commands/importbooks.py diff --git a/catalogue/management/commands/importbooks.py b/catalogue/management/commands/importbooks.py index 3b8a56463..22dd237f7 100644 --- a/catalogue/management/commands/importbooks.py +++ b/catalogue/management/commands/importbooks.py @@ -3,10 +3,8 @@ import os from django.core.management.base import BaseCommand from django.core.management.color import color_style from optparse import make_option -from slughifi import slughifi -import dcparser -from catalogue.models import Book, Tag +from catalogue.models import Book class Command(BaseCommand): @@ -40,26 +38,10 @@ class Command(BaseCommand): if not os.path.splitext(file_name)[1] == '.xml': print self.style.NOTICE("Skipping '%s': not an XML file." % file_path) continue - if verbosity > 1: + if verbosity > 0: print "Parsing '%s'" % file_path - - book_info = dcparser.parse(file_path) - book = Book(title=book_info.title, slug=slughifi(book_info.title)) - book.save() - book_tags = [] - for category in ('kind', 'genre', 'author', 'epoch'): - tag_name = getattr(book_info, category) - tag_sort_key = tag_name - if category == 'author': - tag_sort_key = tag_name.last_name - tag_name = ' '.join(tag_name.first_names) + ' ' + tag_name.last_name - tag, created = Tag.objects.get_or_create(name=tag_name, - slug=slughifi(tag_name), sort_key=slughifi(tag_sort_key), category=category) - tag.save() - book_tags.append(tag) - book.tags = book_tags - + Book.from_xml_file(file_path) transaction.commit() transaction.leave_transaction_management()