2011-04-16 70 views
1

起初,Im使用FreeBSD 8.1,Plone 4.0.5並測試Data.fs和RelStorage 1.5.0b2(Postgresql 9.0.3)。 Im來自丹麥,我們使用丹麥語字母(「æøå」)。Plone 4.0.5和Unicode混淆

我對編碼感到困惑,但我最初的猜測是最好的方法是使用Unicode(utf-8)。什麼是配置FreeBSD,Plone(和產品)和PostgreSQL符合丹麥信件的正確方法。我已經被告知PostgreSQL的編碼並不重要。

我一直在搜索有關site.py和sitecustomize.py的評論,當谷歌搜索錯誤 - 請評論。

謝謝。 Nikolaj G.

回答

6

Plone及其所有插件默認支持Unicode,您無需在任何級別配置編碼。

即使在使用RelStorage時,我們只會將二進制數據存儲在SQL數據庫中並且沒有字符串,因此在此級別不會發生解除/編碼。

更改site.py或sitecustomize.py中的Python默認編碼實際上是有害的,而您不應該這樣做。它只會掩蓋代碼庫中的實際編程錯誤,並可能導致數據不一致。

在代碼庫中,我們使用Unicode和UTF-8編碼字符串的混合。所以一般來說你的代碼必須以一種處理這兩種方式的方式編寫。這是不幸的,但是我們在各個層面慢慢遷移到適當的Unicode的副作用。

+0

謝謝Hanno,所以如果Im使用ISO8859-1或UTF-8編碼操作系統(LC_CTYPE等.cshrc),那並不重要。這是正確的理解?我想所有的語言環境(語言)配置是在網站創建時選擇語言時完成的,對嗎?我不會使用site.py和 – user669857 2011-04-17 15:41:22

+0

(對不起,回車)...和sitecustomzie.py。謝謝。 Nikolaj G. – user669857 2011-04-17 15:42:36

+0

我們不依賴任何操作系統級別的區域設置。作爲一個Web應用程序,我們需要能夠在潛在的不同語言環境中提供每個響應,具體取決於許多變量。因此,所有與語言環境有關的設置都是在應用程序內完成的 - 但對於單語網站來說,語言是唯一重要的語言。 – 2011-04-18 20:50:20