Category: Türkçe
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.