2010-12-22 21 views
0

我有一個名爲City的模型,在該模型中我有一個URLField。使用Django Admin工具我試圖輸入這個URL「http://en.wikipedia.org/wiki/Düsseldorf」。管理員抱怨這是一個無效的網址,可能是因爲「ü」unicode字符。在文檔 http://docs.djangoproject.com/en/dev/ref/forms/fields/#urlfield中,您可以閱讀以下語句:「在Django 1.2中進行了更改:URLField先前未將URL識別爲包含IDN(國際化域名;包含unicode字符的域名)域名的有效URL。 。更正,但我收到一條錯誤消息:?「輸入有效網址」我使用Django 1.2.2版本URLField中的Django Admin統一碼

有誰知道發生了什麼

+0

只需注意「IDN」,僅適用於URL的域名部分(de.wikipedia.org),而不適用於URL的其餘部分。 – 2010-12-22 20:53:12

回答

0
http://en.wikipedia.org/wiki/Düsseldorf 

是不是一個URI,它是IRI

如果您的軟件不支持港口IRIs,你將不得不自己手動轉換它。除了主機名部分,這的確使用IDN編碼,這意味着使用UTF-8和URL編碼:

http://en.wikipedia.org/wiki/D%C3%BCsseldorf

這通常仍顯示爲 '杜塞爾多夫' 在現代,IRI-支持網頁瀏覽器(點擊鏈接查看)。