Let's take a look at what we want to achieve by the end of this chapter:
Getting an overview of all the features provided by Django to allow localization
Translating the contents of the site into French
Giving users the ability to choose which language they want to use the site in
Persisting the language preference of the user across multiple visits
Translating the content of models
Before we start, there is one thing I'd like to mention. As we are learning this stuff for the first time, we will start with an already existing Django application. However, our application is very small compared to most real-world projects. For larger applications, it is usually more difficult to add localization after finishing the project.
It is always a good idea to think about localization requirements when starting the project and then incorporating those features while developing the application for the first time, rather than doing so at a later stage when the application has been developed.