Fixes #3509: support for long titles.
authorRadek Czajka <radekczajka@nowoczesnapolska.org.pl>
Thu, 16 Oct 2014 11:48:02 +0000 (13:48 +0200)
committerRadek Czajka <radekczajka@nowoczesnapolska.org.pl>
Thu, 16 Oct 2014 11:48:02 +0000 (13:48 +0200)
apps/catalogue/migrations/0005_auto_20141016_1337.py [new file with mode: 0644]
apps/catalogue/models/book.py
apps/picture/migrations/0004_auto_20141016_1337.py [new file with mode: 0644]
apps/picture/models.py

diff --git a/apps/catalogue/migrations/0005_auto_20141016_1337.py b/apps/catalogue/migrations/0005_auto_20141016_1337.py
new file mode 100644 (file)
index 0000000..6de3157
--- /dev/null
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('catalogue', '0004_remove_booktags_count_related_info'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='book',
+            name='title',
+            field=models.CharField(max_length=32767, verbose_name='Title'),
+        ),
+    ]
index 3da9f06..bfc9ec4 100644 (file)
@@ -40,7 +40,7 @@ def _ebook_upload_to(upload_path):
 
 class Book(models.Model):
     """Represents a book imported from WL-XML."""
-    title         = models.CharField(_('title'), max_length=120)
+    title         = models.CharField(_('title'), max_length=32767)
     sort_key = models.CharField(_('sort key'), max_length=120, db_index=True, editable=False)
     sort_key_author = models.CharField(_('sort key by author'), max_length=120, db_index=True, editable=False, default=u'')
     slug = models.SlugField(_('slug'), max_length=120, db_index=True,
@@ -99,7 +99,7 @@ class Book(models.Model):
     def save(self, force_insert=False, force_update=False, **kwargs):
         from sortify import sortify
 
-        self.sort_key = sortify(self.title)
+        self.sort_key = sortify(self.title)[:120]
         self.title = unicode(self.title) # ???
 
         try:
diff --git a/apps/picture/migrations/0004_auto_20141016_1337.py b/apps/picture/migrations/0004_auto_20141016_1337.py
new file mode 100644 (file)
index 0000000..88d1249
--- /dev/null
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('picture', '0003_auto_20140924_1559'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='picture',
+            name='title',
+            field=models.CharField(max_length=32767, verbose_name='Title'),
+        ),
+    ]
index 70efd78..120750d 100644 (file)
@@ -72,7 +72,7 @@ class Picture(models.Model):
     Picture resource.
 
     """
-    title       = models.CharField(_('title'), max_length=255)
+    title       = models.CharField(_('title'), max_length=32767)
     slug        = models.SlugField(_('slug'), max_length=120, db_index=True, unique=True)
     sort_key    = models.CharField(_('sort key'), max_length=120, db_index=True, editable=False)
     sort_key_author = models.CharField(_('sort key by author'), max_length=120, db_index=True, editable=False, default=u'')
@@ -161,7 +161,7 @@ class Picture(models.Model):
                 raise Picture.AlreadyExists('Picture %s already exists' % picture_xml.slug)
 
             picture.areas.all().delete()
-            picture.title = unicode(picture_xml.picture_info.title)[:255]
+            picture.title = unicode(picture_xml.picture_info.title)
             picture.extra_info = picture_xml.picture_info.to_dict()
 
             picture_tags = set(catalogue.models.Tag.tags_from_info(picture_xml.picture_info))