from django.db import models
class Migration(DataMigration):
-
+
def forwards(self, orm):
""" Look for HTML files without any real content and delete them """
from lxml import etree
- from librarian import html_has_content
-
+ from librarian.html import html_has_content
+
for book in orm.Book.objects.exclude(html_file=''):
if not html_has_content(etree.parse(book.html_file)):
book.html_file.delete()
for key in filter(lambda x: x.startswith('_short_html'), book.__dict__):
book.__setattr__(key, '')
book.save()
-
+
def backwards(self, orm):
""" Do nothing. We don't want empty HTML files anyway. """
pass
-
+
models = {
'auth.group': {
'Meta': {'object_name': 'Group'},
'_short_html_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
'_short_html_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
'_short_html_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
- '_tag_counter': ('catalogue.fields.JSONField', [], {'default': "''"}),
- '_theme_counter': ('catalogue.fields.JSONField', [], {'default': "''"}),
+ '_tag_counter': ('catalogue.fields.JSONField', [], {'null': 'True'}),
+ '_theme_counter': ('catalogue.fields.JSONField', [], {'null': 'True'}),
'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
'epub_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
}
}
-
+
complete_apps = ['catalogue']