code: def pre_sql_setup(self):
          
          super(MultilingualSQLCompiler, self).pre_sql_setup()
  
          if not self.query.include_translation_data:
              return
  
          opts = self.query.model._meta
          qn = self.quote_name_unless_alias
          qn2 = self.connection.ops.quote_name
  
          if hasattr(opts, 'translation_model'):
              master_table_name = self.query.join((None, opts.db_table, None, None))
              translation_opts = opts.translation_model._meta
              trans_table_name = translation_opts.db_table
              for language_code in get_language_code_list():
                  table_alias = get_translation_table_alias(trans_table_name,
                                                            language_code)
                  trans_join = ("LEFT JOIN %s AS %s ON ((%s.master_id = %s.%s) AND (%s.language_code = '%s'))"
                             % (qn2(translation_opts.db_table),
                             qn2(table_alias),
                             qn2(table_alias),
                             qn(master_table_name),
                             qn2(opts.pk.column),
                             qn2(table_alias),
                             language_code))
                  self.query.extra_join[table_alias] = trans_join
docs: Adds the JOINS and SELECTS for fetching multilingual data.