Django's builtin i18n support stores the selected language in the session. This approach has the following problems:
- Sessions are created for anonymous users when they switch language
- It may lead to caching issues (the pages are set to "Vary-Cookie", but in fact the session cookie does not change when the language switches)
The above is captured in the following Django tickets.
This little project aims to be a drop in replacement for Django's i18n so that you can have the language stored in a cookie, which is in line with what ticket 12794 requests.
Simply follow the Django i18n instructions. However: