django-localized-fields

Implementation of localized model fields using PostgreSQL HStore fields.


Keywords
django, localized, language, models, fields, postgres, hstore, i18n
License
MIT
Install
pip install django-localized-fields==6.2

Documentation

Tests CircleCI
📝 License License
📦 PyPi PyPi
Django Versions 2.0, 2.1, 2.2, 3.0, 3.1, 3.2
Python Versions 3.6, 3.7, 3.8, 3.9
📖 Documentation Read The Docs
⚠️ Upgrade Upgrade fom v5.x
🏁 Installation Installation Guide

django-localized-fields is an implementation of a field class for Django models that allows the field's value to be set in multiple languages. It does this by utilizing the hstore type (PostgreSQL specific), which is available as models.HStoreField since Django 1.10.


⚠️ This README is for v6. See the v5.x branch for v5.x.


Working with the code

Prerequisites

  • PostgreSQL 10 or newer.
  • Django 2.0 or newer.
  • Python 3.6 or newer.

Getting started

  1. Clone the repository:

    λ git clone https://github.com/SectorLabs/django-localized-fields.git
    
  2. Create a virtual environment:

    λ cd django-localized-fields
    λ virtualenv env
    λ source env/bin/activate
    
  3. Create a postgres user for use in tests (skip if your default user is a postgres superuser):

    λ createuser --superuser localized_fields --pwprompt
    λ export DATABASE_URL=postgres://localized_fields:<password>@localhost/localized_fields
    

    Hint: if you're using virtualenvwrapper, you might find it beneficial to put the export line in $VIRTUAL_ENV/bin/postactivate so that it's always available when using this virtualenv.

  4. Install the development/test dependencies:

    λ pip install ".[test]" ".[analysis]"
    
  5. Run the tests:

    λ tox
    
  6. Auto-format code, sort imports and auto-fix linting errors:

    λ python setup.py fix