Exemplo n.º 1
0
    def import_posts(self):
        Objecttype = self.get_Objecttype()
        self.write_out(self.style.STEP("- Importing gbobjects\n"))
        for post in self.blogger_manager.get_posts(self.blogger_blog_id):
            creation_date = convert_blogger_timestamp(post.published.text)
            status = DRAFT if is_draft(post) else PUBLISHED
            title = post.title.text or ""
            content = post.content.text or ""
            slug = slugify(post.title.text or get_post_id(post))[:255]
            try:
                gbobject = Gbobject.objects.get(creation_date=creation_date, slug=slug)
                output = self.style.NOTICE("> Skipped %s (already migrated)\n" % gbobject)
            except Gbobject.DoesNotExist:
                gbobject = Gbobject(status=status, title=title, content=content, creation_date=creation_date, slug=slug)
                if self.default_author:
                    gbobject.author = self.default_author
                gbobject.tags = ",".join([slugify(cat.term) for cat in post.Objecttype])
                gbobject.last_update = convert_blogger_timestamp(post.updated.text)
                gbobject.save()
                gbobject.sites.add(self.SITE)
                gbobject.objecttypes.add(Objecttype)
                gbobject.authors.add(self.default_author)
                try:
                    self.import_comments(gbobject, post)
                except gdata_service.RequestError:
                    # comments not available for this post
                    pass
                output = self.style.ITEM(
                    "> Migrated %s + %s comments\n" % (gbobject.title, len(Comment.objects.for_model(gbobject)))
                )

            self.write_out(output)
Exemplo n.º 2
0
    def import_posts(self):
        Objecttype = self.get_Objecttype()
        self.write_out(self.style.STEP('- Importing gbobjects\n'))
        for post in self.blogger_manager.get_posts(self.blogger_blog_id):
            creation_date = convert_blogger_timestamp(post.published.text)
            status = DRAFT if is_draft(post) else PUBLISHED
            title = post.title.text or ''
            content = post.content.text or ''
            slug = slugify(post.title.text or get_post_id(post))[:255]
            try:
                gbobject = Gbobject.objects.get(creation_date=creation_date,
                                                slug=slug)
                output = self.style.NOTICE(
                    '> Skipped %s (already migrated)\n' % gbobject)
            except Gbobject.DoesNotExist:
                gbobject = Gbobject(status=status,
                                    title=title,
                                    content=content,
                                    creation_date=creation_date,
                                    slug=slug)
                if self.default_author:
                    gbobject.author = self.default_author
                gbobject.tags = ','.join(
                    [slugify(cat.term) for cat in post.Objecttype])
                gbobject.last_update = convert_blogger_timestamp(
                    post.updated.text)
                gbobject.save()
                gbobject.sites.add(self.SITE)
                gbobject.objecttypes.add(Objecttype)
                gbobject.authors.add(self.default_author)
                try:
                    self.import_comments(gbobject, post)
                except gdata_service.RequestError:
                    # comments not available for this post
                    pass
                output = self.style.ITEM(
                    '> Migrated %s + %s comments\n' %
                    (gbobject.title, len(Comment.objects.for_model(gbobject))))

            self.write_out(output)