How to do it...

Execute the following steps to define the multilingual character field and multilingual text field:

  1. Open the model_fields.py file, and create the base multilingual field, as follows:
# myproject/apps/core/model_fields.pyfrom django.conf import settingsfrom django.db import modelsfrom django.utils.translation import get_languagefrom django.utils import translationclass MultilingualField(models.Field):    SUPPORTED_FIELD_TYPES = [models.CharField, models.TextField]    def __init__(self, verbose_name=None, **kwargs):        self.localized_field_model = None        for model in MultilingualField.SUPPORTED_FIELD_TYPES:            if issubclass(self.__class__, model):                self.localized_field_model = model        self._blank = kwargs.get("blank", False)        self._editable ...

Get Django 3 Web Development Cookbook - Fourth Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.