2009-01-21 16 views
7

Orta boyutlu bir Django projem var (herhangi bir fark yaratırsa AppEngine'de çalışıyor) ve .po dosyalarında olması gereken tüm dizeleri bulundurmalısınız.Django. Bir fikrin neden?

Belirli dizelerin çevrilmediği garip davranışlar görüyorum. Make_messages'ı çalıştırdığımda .po dosyasında, {% trans%} etiketlerimin olduğu yerde doğru dosya konumları işaretlendiğinde görünürler. Çeviriler yerinde ve diğer taraftaki diğer dizelere göre doğru görünüyor. Ancak söz konusu sayfayı görüntülediğimde, dizelerin yaklaşık 1/4'ü çevirmiyor.

İlgili oluşturulan .mo dosyasına girerken, msgid'i veya msgstr'yi göremiyorum.

Buna benzer bir şey gören oldu mu? Ne olabileceği hakkında bir fikrin var mı?

  • trans etiketleri doğru
  • po dosyaları compile_messages

cevap

9

Ugh sırasında doğru

  • herhangi bir hata bak bak. Django, beni öldürüyorsun.

    İşte oluyordu budur: Sadece Django bilir Nedense

    http://blog.e-shell.org/124

    , yorumun '# bulanık' ile benim çevirilerin bazı dekore etmeye karar verdi. Hangisinin rastgele işaretleneceğini seçmiş görünüyor. "Burada çeviri olsa bile bu çevirmeyin:"

    Ben başka kötü ruh gelecekte karşıya gelme ihtimaline burada bırakacağız

    Neyse, #fuzzy bu demektir.

  • +0

    +1 varsayılan olarak PyCharm, dosyanın en üstündeki #fuzzy'yi devre dışı bırakarak içerir. – Valchris

    +0

    Teşekkürler, aynı sorunu yaşadım, zaman kurtardı :-) – Tommy

    10

    Bulanık işaretleyici, makemessages ile .po dosyasına eklenir. Yeni bir dizginiz olduğunda (çeviriler olmadan), benzer dizeleri arar ve bunları, bulanık belirteçle çevirme olarak içerir. Bu demektir ki, bu ham bir eşleşmedir, bu yüzden kullanıcıyı görüntülemeyin, ama insan çevirmen için iyi bir başlangıç ​​olabilir.

    Bu bir Django davranışı değil, gettext özelliğinden geliyor.