0
我試圖得到一個GET參數值,看起來像這樣: http://someurl/handler.json?&q=%E1%F8%E0%F1%F8%E9Django的Unicode的GET參數值
在這種情況下Q參數是希伯來語。 我嘗試使用下面的代碼讀取值:
request.GET.get("q", None)
我得到的不是正確的文本gybrish。 任何想法這裏有什麼不對?我錯過了一些設置?
我試圖得到一個GET參數值,看起來像這樣: http://someurl/handler.json?&q=%E1%F8%E0%F1%F8%E9Django的Unicode的GET參數值
在這種情況下Q參數是希伯來語。 我嘗試使用下面的代碼讀取值:
request.GET.get("q", None)
我得到的不是正確的文本gybrish。 任何想法這裏有什麼不對?我錯過了一些設置?
查詢字符串在ISO-8859-8中,但Django的默認編碼是UTF-8。您必須將DEFAULT_CHARSET
或HttpRequest.encoding
更改爲ISO-8859-8才能獲取正確的Unicode數據。
或者,如果可以,請將您的應用程序更改爲始終使用UTF-8編碼。不支持Unicode的Web應用程序是如此的上個世紀。 – bobince 2009-10-18 17:42:10
UTF-8!= Unicode。 – 2009-10-18 17:45:57
確實如此,但ISO-8859-8並沒有涵蓋整個Unicode,所以你不能說你支持Unicode,你只支持它的一小部分(ISO-8859-8)。 – 2009-10-18 17:46:58