def __iter__(self):
""" ????????? XML """
yield """<?xml version="1.0" encoding="utf-8"?><sphinx:docset xmlns:sphinx="http://sphinxsearch.com/">"""
yield from self.scheme
for instance in self.get_queryset():
docuemnt = self.build_document(instance)
try:
document = self.scheme.format(docuemnt, doc_id=instance.id)
except ValidationError as e:
logger.error(e.message)
return
else:
output = """<sphinx:document id="{0}">""".format(instance.id)
for key, value in document.items():
output += """<{0}>{1}</{0}>""".format(
key, escape(value) or ''
)
output += """</sphinx:document>"""
yield output
yield """</sphinx:docset>"""
评论列表
文章目录