# -*- 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), ]