Ruby on Rails 3.2 Mailer, localize o campo assunto do correio

Atualmente estou escrevendo um mailer no RoR 3.2 que enviaria e-mails que deveriam ser localizados com base no idioma de um usuário. Eu consegui renderizar as visualizações localizadas corretas, mas estou tendo algumas dificuldades com alguns campos que exigem a alteração da localidade (como o assunto). Eu já li algumas mensagens que são contra a alteração da localidade antes de enviar o email. Os usuários têm muitos idiomas diferentes e isso significaria alterar minha localidade toda vez que um usuário receber um email.

Eu sei que seria possível alterar a localidade, enviar o email, alterar a localidade. Isso não parece o caminho dos trilhos. Existe uma maneira correta de fazer isso?

Aqui está um trecho:

class AuthMailer < ActionMailer::Base
  add_template_helper(ApplicationHelper)
  default :from => PREDEF_MAIL_ADDRESSES::System[:general]

  [...]

  def invite(address, token, locale)
    @token = token
    @locale = locale
    @url = url_for(:controller => "signup_requests", :action => "new", :token => token.key, :locale => locale)

    mail(:subject => "Invitation", :to => address) do |format|
      format.html { render ("invite."+locale) }
      format.text { render ("invite."+locale) }
    end
  end

  [...]
end

Minhas visões

auth_mailer
  invite.en.html.erb
  invite.en.text.erb
  invite.it.html.erb
  invite.it.text.erb
  ...

Em suma, neste caso, gostaria de localizar o assunto: usando o @locale, mas não executando: I18n.locale = locale

questionAnswers(3)

yourAnswerToTheQuestion