Commit b01d05dd authored by Michal Čihař's avatar Michal Čihař

Limit length of dictionary field

We need to fit into index on MySQL, which is 767 bytes (=191 chars with
utf8mb4).

Fixes #938
Signed-off-by: default avatarMichal Čihař <michal@cihar.com>
parent acb32e0b
...@@ -77,8 +77,8 @@ class Migration(migrations.Migration): ...@@ -77,8 +77,8 @@ class Migration(migrations.Migration):
name='Dictionary', name='Dictionary',
fields=[ fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('source', models.CharField(max_length=200, db_index=True)), ('source', models.CharField(max_length=100, db_index=True)),
('target', models.CharField(max_length=200)), ('target', models.CharField(max_length=100)),
('language', models.ForeignKey(to='lang.Language')), ('language', models.ForeignKey(to='lang.Language')),
], ],
options={ options={
......
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('trans', '0047_project_source_language'),
]
operations = [
migrations.AlterField(
model_name='dictionary',
name='source',
field=models.CharField(max_length=190, db_index=True),
),
migrations.AlterField(
model_name='dictionary',
name='target',
field=models.CharField(max_length=190),
),
]
...@@ -51,7 +51,7 @@ class DictionaryManager(models.Manager): ...@@ -51,7 +51,7 @@ class DictionaryManager(models.Manager):
target = unit.get_target() target = unit.get_target()
# Ignore too long words # Ignore too long words
if len(source) > 200 or len(target) > 200: if len(source) > 190 or len(target) > 190:
continue continue
# Get object # Get object
...@@ -161,8 +161,8 @@ class DictionaryManager(models.Manager): ...@@ -161,8 +161,8 @@ class DictionaryManager(models.Manager):
class Dictionary(models.Model): class Dictionary(models.Model):
project = models.ForeignKey(Project) project = models.ForeignKey(Project)
language = models.ForeignKey(Language) language = models.ForeignKey(Language)
source = models.CharField(max_length=200, db_index=True) source = models.CharField(max_length=190, db_index=True)
target = models.CharField(max_length=200) target = models.CharField(max_length=190)
objects = DictionaryManager() objects = DictionaryManager()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment