Category: Türkçe

Date:

Kanada dönüşü yarım kalan işlerden Paket Arama sitesini tamamlamam gerekiyordu. Sistem düzgün bir şekilde çalışmasına rağmen eklemeyi düşündüğüm veya başkalarının aklına gelen bir takım ek özellikler vardı. Birçoğu ilk okunduğunda anlaşılabilir durumda ancak bazılarını açıklayacağım.

  • Arama yapılınca arama kutusunda arama metninin kalması.

  • Sayfa açılınca imlecin arama kutusunda yanıp sönmesi

  • Sonuç sayısı gösterme

  • Pardus 2009 desteği

  • Verilerin tek tabloda tutulması

  • Lâl teması

  • Önbellekleme kullanımı

  • Hoşgeldiniz yazısı, tanıtım

    • Geri bildirimlere göre Paket Arama, paket listesinde ve açıklamalarında arama yapıyor gibi bir izlenim veriyormuş. Bu sebeple paket içeriklerini taradığımızı ifade ettim.

  • Arama sonuçlarında paket sayfalarına bağlantı

    • Paket içeriği görüntülenirken sonuç sayfasında paket hakkında daha fazla bilgi alabileceğiniz bağlantılar mevcut olacak.

  • POST sonrasında URL güncelleme

    • Şimdiye kadar arama terimini POST metodu ile gönderdiğimizde URL değişmiyordu. Dolayısıyla o anki sonuçların adresini bir başkasına göndermek mümkün değildi. Bu sebeple arama terimini alan, inceleyen ve ona göre gerekli URLe yönlendiren; böylelikle URL devamlılığını sağlayan bir sistem çözümü getirdim.

  • Türkçe karakter ile arama desteği

    • Türkçe karakter ile arama yapıldığında Django hata veriyordu çünkü URL eşleştirmeleri ascii düzenli ifadeler üzerinden yapılıyordu. Bu sebeple Unicode karşılaştırmaya izin vermenin bir yolunu bulmam gerekti. Bunu diğer bir yazıda anlatacağım.

  • Sonuçları sayfalandırma özelliği

    • Sonuçlar çok sayıda olduğunda sisteme yük bindirmekteydi. Bu yüzden onları 100er sayfalandırma yoluna gittim. Bunun için Djangonun hazır pagination modülünü kullandım. Onu da farklı bir yazıda anlatabilirim.

Hala çözmem gereken sorunlar mevcut. Bunların en başında tembel sayfalandırma geliyor. Öyle ki 10000 sonucu sayfalamaya kalktığımda önce 10000 sonucun hepsini bir listeye atıp ondan sonra sayfalandırıyor. Bu da darboğaza sebebiyet veriyor. Diğer bir sorun settings.py ayarlarının üzerine yüklenen local_settings.py dosyasına yazdığım DOCUMENT_ROOT ve WEB_URLin TEMPLATE_DIR değişkenini etkilememesi. Çünkü bu değişken settings.pyde statik olarak tanımlanıyor. Çözüm önerilerinizi beklerim.

Sistemin eski hali burada, son hali şurada, kodları orada yayında. Son halinde Türkçe karakter sorunu devam ediyor olabilir. Sebebinin ise Python sürümünün eski olması olduğunu tahmin ediyorum.


Share: FacebookGoogle+Email


comments powered by Disqus