Better API i hope
This commit is contained in:
@@ -19,6 +19,7 @@ Version: 0.1.0
|
||||
"""
|
||||
|
||||
import json
|
||||
import logging
|
||||
from django.db import migrations
|
||||
from django.utils.translation import get_language
|
||||
|
||||
@@ -65,7 +66,7 @@ class ConvertTranslatableField(migrations.Operation):
|
||||
|
||||
def _convert_json_to_string(self, model, schema_editor):
|
||||
"""Convert JSON translations to single language string"""
|
||||
print(f"Converting {self.model_name}.{self.field_name} from JSON to string (language: {self.language})")
|
||||
logging.debug(f"Converting {self.model_name}.{self.field_name} from JSON to string (language: {self.language})")
|
||||
|
||||
for obj in model.objects.all():
|
||||
field_value = getattr(obj, self.field_name)
|
||||
@@ -89,7 +90,7 @@ class ConvertTranslatableField(migrations.Operation):
|
||||
f"UPDATE {table_name} SET {self.field_name} = %s WHERE id = %s",
|
||||
[new_value, obj.pk]
|
||||
)
|
||||
print(f" Converted {obj.pk}: {field_value} -> {new_value}")
|
||||
logging.debug(f" Converted {obj.pk}: {field_value} -> {new_value}")
|
||||
|
||||
except (json.JSONDecodeError, TypeError):
|
||||
# Already a string, leave as-is
|
||||
@@ -97,7 +98,7 @@ class ConvertTranslatableField(migrations.Operation):
|
||||
|
||||
def _convert_string_to_json(self, model, schema_editor):
|
||||
"""Convert single language string to JSON translations"""
|
||||
print(f"Converting {self.model_name}.{self.field_name} from string to JSON (language: {self.language})")
|
||||
logging.debug(f"Converting {self.model_name}.{self.field_name} from string to JSON (language: {self.language})")
|
||||
|
||||
for obj in model.objects.all():
|
||||
field_value = getattr(obj, self.field_name)
|
||||
@@ -117,7 +118,7 @@ class ConvertTranslatableField(migrations.Operation):
|
||||
f"UPDATE {table_name} SET {self.field_name} = %s WHERE id = %s",
|
||||
[new_value, obj.pk]
|
||||
)
|
||||
print(f" Converted {obj.pk}: {field_value} -> {new_value}")
|
||||
logging.debug(f" Converted {obj.pk}: {field_value} -> {new_value}")
|
||||
|
||||
def describe(self):
|
||||
direction = "translatable" if self.to_translatable else "non-translatable"
|
||||
|
||||
Reference in New Issue
Block a user