This is also incorrect. I18n.locale is set from the header only if there is no logged in user. See here:
Now, I suspect that when the user first signs up, current_user is not set, thus kick-starting the whole get-the-language-from-header process, and then the I18n.locale got persisted into the user’s account.
However, this is certain NOT how it is done when a user redeems an invite.
익명(로그인되지 않은) 사용자의 브라우저 언어 설정에 따라 로케일을 설정하려면 allow user locale(사용자 로케일 허용) 및 set locale from accept language header(Accept-Language 헤더에서 로케일 설정) 사이트 설정을 모두 활성화해야 합니다. 이 두 설정은 모두 사이트의 “기본 설정(Basic Setup)” 페이지 상단 근처에서 찾을 수 있습니다.
이 설정들이 활성화되면 사이트에 로그인하지 않은 사용자의 경우, 브라우저에서 설정한 선호 언어로 Discourse 사용자 인터페이스가 자동으로 설정됩니다. 로그인되지 않은 사용자가 사이트에 계정을 생성하기로 결정하면, 해당 사용자의 로케일은 브라우저에서 설정된 로케일로 자동으로 설정됩니다. 단, 이 기능은 사용자의 로케일이 Discourse가 번역된 언어로 설정된 경우에만 작동합니다.
set locale from accept language header 설정은 이미 사이트에 계정을 생성한 사용자에게는 영향을 미치지 않습니다. 계정이 생성된 후에는 Discourse 사용자 인터페이스가 사용자의 설정 페이지에서 지정된 로케일로 표시됩니다. allow user locale 설정이 활성화되어 있는 한, 기존 사용자는 다음 위치에서 로케일을 업데이트할 수 있습니다:
번역가(Translator) 플러그인과 관련하여 이 문제에 대해 간단한 질문이 있습니다. 플러그인 번역 제한이 '모두(Everyone)'로 설정된 경우, 이 시나리오에서 번역가 플러그인이 작동할까요?
(다양한 로케일이 번역 버튼이 표시되도록 트리거하는 것이기 때문입니다)