Schema and Query design for table with multiple languages
Your data model is good.

The only addition I'd make is to add a primary key to the &ldquo;language&rdquo; tables that consists of (*_id, language). Every table should have a primary key, and there should be an index on the foreign key column.

Another thing you could do is to use an enum type or a lookup table for the language rather than using text. That avoids typos.