Uygulamanızda çokça migration dosyası olabilir, bu konuda korkmanıza veya gerilmenize gerek yok hiç bir sıkıntı çıkmaksızın kullanmaya devam edebilirsiniz. Testlerinizi çalıştırırken sadece süreyi uzatacaktır. ci/cd süreçlerinde bunu biraz iyileştirmek isterseniz kullanabilirsiniz ancak bence gerek yok. Git kullanıyorsanız bu işlemi yaparken öyle fazla korkmanıza da gerek yok, sadece Migration ve gerekli dosyaları kaldıracağız sonrasında ise sıfırlayıp … Django’da Migrationlar Nasıl Sıfırlanır? yazısına devam et →
We needed django pagination in a small project, I edited a piece of code that was visually compatible for bulma css you may need to make some changes to the code (design, structural or general) Follow the steps below to add to the template, First, let’s create our file that we are going to add. … Django Pagination with Bulma CSS yazısına devam et →
Kullanıcıların birden fazla yerde oturum açmalarını engellemek isterseniz aşağıdaki gibi bir yapı kullanarak engelleme yapabilirsiniz. Oturumlarda kullanılan session_id kontrol edilecek ve tekilleştirilme uygulanacak birden fazla sessin olursa bir önceki session otomatik kapatılacak.
Mongodb kullananlar django’nun kendi paginatorunu kullandıklarında performans sorunları yaşıyor olabilirler, bu kod ile bu sorunu ortadan kaldırabilirsiniz. Kullanmayı bıraktığımız bu güzel kodumuz sizlerle. Kendinize göre uyarlamayı ihmal etmeyin, kodumuzda sayfa kaldığı yerden devam etsin diye ufak tefek değişiklikler yapılmıştır. BONUS
Sızdırılan parolaların durumları ortada hal böyle olunca alternatif oturum açma mekanizmaları gündeme gelmeye başladı, bunlardan bizimde zamanında kullandığımız yöntemi artık açıklama zamanı geldi. Bu sistemi hali hazırda kullanmayı bıraktık, elimde kalan halini sizlerle paylaşıyorum. Öncelikli olarak bu sistemde uygulanan yapıda girişler suistimal edilmemesi amacıyla hem tek kullanımlık URL hemde giriş sırasında mail gatewaylerin linkin geçerliliğini … Django’da Parolasız Oturum Açma(Passwordless Authentication) Mekanizması Nasıl Uygulanır? yazısına devam et →
Django REST Framework kullanılırken hata çıktılarının özelleştirilmesi önemli özellikle bir takım standart çıktılar oturtulmak isteniyor ise aşağıda oluşturduğum örnek exception kullanılabilir. Böylelikle istenilen şekillerde özelleştirilmiş, hata çıktıları oluşturulabilir. Hatalara rotalar eklenebilir. Json şeması belirtilebilir.
Projeleri geliştirirken çoklu dil için çalışma yapıyor olabilirsiniz globalleşen dünyada tek dil tek millet gibi kavramlar yok, bunun yerine çoklu dil ve herkese hizmet etmek var. Bu bağlamda kişinin dil ayarlarını tarayıcısına kayıt etmek için aşağıdaki yolu kullanabilirsiniz. 10 yıl geçerli olacak şekilde kayıt edilir. Session’a ayrıca eklenir.
Django üzerinde kullanıcıların IP adreslerine göre zaman dilimlerini değiştirmek kullanıcının bölgesine göre doğru düzgün zamanları göstermek isteyenler aşağıdaki kod parçasını kullanabilirler.
Django üzerinde tutulan statik dosyaları versiyonlu bir şekilde tutmak ve Amazon S3 üzerinde barındırmak isteyen arkadaşlarımız bu kodu kullanabilirler. Normalde Django versiyonlanmış Asset desteklemekte ancak direk S3 desteği bulunmamaktadır, bu iş için böyle bir kod işinizi çokça görecektir. Kullanabilmek amacıyla STATIC_ROOT tanımlaması yapmayı unutmayınız.
Herkesten sakladığınız ve sadece erişim isteği isteyen kullanıcıların dosyalara erişmesini sağlamak istiyorsanız ve bu isteğinizi Amazon üzerinde bulunan S3 bucketınızda yapacaksanız derdinizin çözümü burada, AWS S3 de tutulan dosyalar private olarak geçmelidir. Amazon S3 API anahtarınızda s3:GetObject yetkisi mutlaka bulunmalıdır. django-storages Kullanılıyorsa ve dosyalar onun üzerinden sisteme yükleniyorsa, imza hatası alınmaması için mutlaka AWS_S3_SIGNATURE_VERSION = … Django’da Amazon S3 Üzerinde Tutulan Private Dosyaların Sunulması yazısına devam et →
Özellikle PDF rapor oluşturma noktasında, HTML’den dönüştürüyorsanız ve görseller amazon s3 gibi uzak sunucularda yer alıyorsa, rapor içerisine gömmek bazen çileye dönebilir, bu noktada şöyle bir kullanım ile rapor içerisine görselleri basitçe ekleyebilirsiniz.
Django uygulamaları geliştiriyor ve çok dilli bir yapıyı da beraberinde kullanıyorsanız, geliştirme ortamınızda Windows ise bir takım hatalar ile karşılaşabilirsiniz. Özellikle gettext ile dil dosyalarının oluşmaması gibi büyük bir problem bulunuyor. Hata şu şekilde Bu sorunun çözmek için gettextin windows sürümünü sisteme dahil edin. Ardından hiç bir şey olmamış gibi dil dosyası oluşacak
Varnish web sitelerini hızlandırmak için kullanılan bir Reverse Proxy aracıdır. Ziyaretçilere asıl sunucu gibi gözüken bir ara katman vekilidir. Cache aldığı dosyaları bellek üzerinde tutabilir. Django üzerinde geliştirdiğiniz bir proje zamanla alıp yürürse ve uygulama üzerinde tuttuğunuz Cache(Yani önbellek) zamanla işe yaramamaya başlarsa yapılandırmanız içerisine Varnish ekleyebilirsiniz. Aşağıda bulunan yapılandırmayı kullanarak Django üzerinde statik dosyaların … Django Uygulamalarında Varnish Cache Kullanımı yazısına devam et →
Django uygulaması geliştirirken özellikle kullandığımız komut ve kısayollar bu belgede gösterilmiştir. # Komut Açıklama 1 ./manage.py makemigrations Django’ya modellerinde değişiklik yaptığınızı ve bu değişikliklerin saklanmasını istediğinizi söyler. 2 ./manage.py sqlmigrate Adlandırılan migrasyonda SQL komutlarını ekrana yazdırır. Aktif bir veritabanı bağlantısı gerektirir. 3 ./manage.py check Veri tabanına dokunmadan ve herhangi bir migrasyon yapmadan sorunları tespit etmek … Django Komutları yazısına devam et →
Django, formlarla çalışabilmemizi sağlayan kapsamlı bir takım enstrümanlar sunan özel bir yapıya sahiptir. Bu yapı özellikleri arasında, tek bir konumda form işlevselliği tanımlama, veri doğrulama ve Django modelleri ile entegrasyonlar yer alır, şimdi ufak bir örnek ile durumun nasıl işlediğine kısaca bakalım. Form oluşturulması için django uygulamamız içerisinde forms.py adlı bir dosya oluşturuyoruz. İçerisini ise … Django Form Yapısı Ve İş Akışı yazısına devam et →
Django, kodunuzu test etmek için oldukça basit bir web sunucusu ile gelir ve bu sunucu ile siteyi test aşamasında sorunsuz bir şekilde çalıştırıp kullanabiliriz, ancak uygulamanın geliştirilme aşaması tamamlandıktan sonra yayına alma sırasında bu web sunucunun kullanılması önerilmez. Bu yüzden araya harici bir web sunucusu eklememiz gerekir. Bunun için biz makalemizde uWSGI kullanacağız. Diğer uygulamalara … UWSGI ve NGINX ile Django Uygulaması Nasıl Kullanılır yazısına devam et →
Günlerden bir gün django projesi ile baya içli dışlı olmuştuk ve recaptcha uygulaması gerekiyordu. Var olan uygulamaya da baktık kurması dert kurcalaması dert bizde düşündük zaten açık kaynak kodlu kodları kendi içimize alalım hem daha sonradan değişiklik yapılacaksa bize kod bakımından kolay olur. İlk önce tabi düşündük sıfırdan yazalım diye ancak daha sonradan uğraşmak istemedik. … Django ReCaptcha Eklenti Düzenleme yazısına devam et →
windows ve linux sistem yönetimi, network ve ağ güvenliği, siber güvenlik, yazılım ve gündemdeki diğer teknolojik konular hakkında blog yazıları