Django admin headers translation case – another argument towards dynamic message references

In Django admin panel there are strings like “Select $sth to change” and “Select $sth to view” where $sth is a Django model name, like “user” or “group” in case of core Django models. But you can have plenty of models with various names either defined by your own application or by third-party library that you use in your project.

Languages with grammatical cases for nouns will have problem to localize it “automatically”, because putting nominative in such a sentences is incorrect, they need accusative (at least in case of Polish).

Some time ago I wrote a snippet – extension to gettext to handle such scenarios utilizing gettext contexts and Python format string syntax.

Recently I started to port that snippet to Django.

Then I came across project Fluent (for the second time) and I was wondering if it would solve my case in a more native way than my approach.

I learned that it’s not yet supported. So I wanted just to chime in and say that it would be awesome to have a way to use Fluent for express the use of right grammatical case of a noun that can come as a variable.

Best regards to all involved in the project,
Maciej