2010-03-22 67 views
3

我想爲基於Erlang Web 1.4的網站添加國際支持。在Erlang Web 1.4中添加國際支持

我想在每個頁面(臭名昭着的國旗)上有幾個鏈接,允許用戶設置他的語言會話變量。

我現在所擁有的是一個鏈接,如:

<li><a href="/session/language/en">English</a></li> 

其中,在會話控制器我做的:

language(Args) -> 
    LanguageId = proplists:get_value(id, Args), 
    case language_is_supported(LanguageId) of 
     false -> 
      ok; 
     true -> 
      wpart:fset("session:lang", LanguageId) 
    end, 
    {redirect, "/"}. 

的問題是,設置的首選語言後,我會就像用戶在改變語言之前被重定向到他所訪問的頁面一樣。在這種情況下,「__path」變量沒有幫助,因爲它包含語言請求而不是「前一個」。

我該如何解決這種情況? 我可能使用了錯誤的方法,但我現在無法做任何事情。

回答

2

如果請求字典是真的so limited,唯一破解我能想到的是,你通過當前頁面的URL回到作爲一個GET變量:

<li><a href="/session/language/en?referrer=/path/to/current/page">English</a></li>

+0

這是什麼我可能會這樣做。謝謝。 – 2010-03-25 15:53:46