def execute(self, *args, **options): if len(args) == 0: raise CommandError('Please, specify filename with bookmarks!') filename = args[0] limit = options.get('limit', None) replace = options.get('replace', False) soup = BeautifulSoup(open(filename)) links = soup.findAll('a', attrs = dict(tags=lambda tag: tag)) if replace: Link.objects.all().delete() ctype = model_to_ctype(Link) TaggedItem.objects.filter(content_type=ctype).delete() if limit is not None: links = (link for link in links[:limit]) else: links = links for link in links: url = link['href'] tags = link['tags'] try: Link(url = url, tags = tags).save() except Exception: logging.exception("can't add link %r with tags %r" % (url, tags))
from django.utils.translation import ugettext_lazy as _ from django.conf.urls.defaults import * from django.contrib import admin from django.conf import settings from django_antichaos.utils import model_to_ctype from antichaos_example.models import Link admin.autodiscover() urlpatterns = patterns( "", (r"^$", "django.views.generic.simple.redirect_to", {"url": "/antichaos/cloud/%d/" % model_to_ctype(Link).id}), (r"^admin/", include(admin.site.urls)), (r"^antichaos/", include("django_antichaos.urls")), (r"^media/(?P<path>.*)$", "django.views.static.serve", {"document_root": settings.MEDIA_ROOT}), )