# -*- coding: utf-8 -*- import lxml.html as lh from django.db import migrations from lxml_html_clean import clean_html def strip_error_html(apps, schema_editor): Submission = apps.get_model("judge", "Submission") for sub in Submission.objects.filter(error__isnull=False).iterator(): if sub.error: sub.error = clean_html(lh.fromstring(sub.error)).text_content() sub.save(update_fields=["error"]) class Migration(migrations.Migration): dependencies = [ ("judge", "0090_fix_contest_visibility"), ] operations = [ migrations.RunPython(strip_error_html, migrations.RunPython.noop, atomic=True), ]