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)
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)