django-profile kurulumu ve dikkat edilmesi gereken noktalar.

Son yazdığım projede profil uygulamasına gerek duydum ve bunun için django-profile kullandım. Aslında içindeki demo uygulaması ve kurulum yönergeleri oldukça açık, yazma sebebim türkçe çevirisini yapmak niteliğinde.

Öncelikle python dizinine eklemek zorunda olduğunuz uygulamalar;

* Python Imaging Library http://www.pythonware.com/products/pil/ ,
* İndirdiğiniz django-profile içinden çıkan “userprofile” dizinini,
* gdata http://gdata-python-client.googlecode.com/files/gdata.py-1.1.0.tar.gz gdata içinden src klasörünün içindekiler kopyalanmalı.

* Google maps api key edinmelisiniz ve install.txt içindeki şekilde settings.py’yi düzenlemelisiniz.

* installed apps ve url.py değişikliğinide yaptıktan sonra django-profile içindeki media dizininin içeriğini kendi static media klasörünüze kopyalayın.

* django-profile/demo/templates içindeki dosyaları kendi tema klasörünüze kopyalayın. base.html kullanıyorsanız incelleyipte kopyalamanızda fayda var. Kendi base.html’iniz içine ilgili javascript dosyalarını eklemeyi unutmayın. Dilerseniz personal.html gibi dosyalara kendi araçlarınızı ekleyebilirsiniz.

* demoprofile örneğinde göreceğiniz models.py içeriği sizi yanıltmasın, userprofile’i settings.py’ye eklediğimiz için manage.py syncdb komutuyla gerekli tablolara sahip olacağız.

Bunları tamamladıktan sonra sanırım hiç bir sorun yaşamadan django-profile uygulamasını projenizde kullanabilirsiniz. Türkçe çeviri dosyası eksik, bunuda küçük bir çalışmayla halledebilirsiniz. Yaptığınız çeviriyi “locale” adındaki klasörün içinde oluşturmanız gerektiğinide belirteyim.

Yeni başlayanlara kolay sağlamasını umduğum anlatımım umarım birilerine faydalı olur.

webfaction ve django

Ürettiğim küçük bir django proje (likedfeed) için webfaction’dan host aldım. Kurulumda karşılaştıklarımı not aldım ve bunları aktarmak istiyorum. Öncelikle belirtmeliyim ki hiçte zor değil.

Başlamadan önce ingilizceniz olmasa dahi izlemeniz gereken video
Bu konuyu araştırdığımda, bir blogger arkadaşın bu konuda yazdığı yazıyı buldum. Serkan yeterince bu konuyu aktarmış. Buradan buyurun. Bunun üzerine fazlaca söylenecek bir şey yok. Serkanın yazısının referansı ise webfaction’ın güzel dökümanı.
Paylaştığım iki linkide incelerseniz, aslında hiç sorunsuz bir kurulum yapabilirsiniz. Aklımda kalan bir kaç küçük noktayı başlık olarak belirtmeliyim ki;
-webfaction secure ftp bağlantısı ve ssh destekliyor. Sftp için, filezilla yeterli. İlk üye olduğunuz kullanıcı adı ile, sftp, ssh, mail, phpmyadmin vs tüm özellikleri bu kullanıcı adı ve şifresi ile kullanıyorsunuz. Dikkat edilmesi gereken husus ise, Bu özelliğin kullanıcı adı ne diyipte oluşturacağınız yeni kullanıcının aynı haklara sahip olmaması.Dilerseniz panelden, account kısmından dilediğiniz özelliğin şifresini değiştirebilirsiniz.
-Webfaction uygulama olarak bir sürü uygulama destekliyor, django, rails, drupal vs. Bunların en son stabil sürümleri bulunduğu gibi, eski sürümleri ilede çalışabiliyorsunuz. Aynı zamanda Svn ve Trac kurabilirsiniz. Svn ile bir proje üzerinde bir kaç geliştirici çok kolay çalışabilir. Tek olsanız dahi svn ile çalışmanız, düzenli olmanız adına iyi olucaktır. Svn ve trac kurulumu için bu videoyu izlemenizi tavsiye ederim.
-Proje oluşturduğunuzda, projenin içinde otomatik oluşan myproject dizinini silip, kendi projenizi upload edin. Ardından wsgi dosyasını düzenleyin. Devamında Apache2 dizinindeki config klasöründeki dosyalarda gerekli değişikliği yapın. Herşey bittiğinde yapmanız gereken apache sunucusunu yeniden başlatmak. Apache2 dizinindeyken (ssh aracılığla) ./bin/restart komutu ile yeniden başlatabiliriz. Detaylı bilgi başta verdiğim bağlantılarda mevcut.
-Projenizin, bağlantısını panel-domain kısmından sağladığınızı varsayarsak, verdiğiniz domain ile sayfanızı sınayın. Olası hataları ise, logs klasöründen error.logs dosyasını okuyarak anlamaya çalışın. Başlıca karşılaşılan sorun import sorunları oluyor, projenizdeki veri yollarına dikkat etmeniz ve düzeltme yapmanız gerekebilir.
Aklımda kalan noktaları paylaştıktan sonra sizleri denemeniz için emrah.webfactional.com adresine bekliyorum. LikedFeed ismini verdiğim projemde küçük bir bağlantı paylaşım uygulaması. Çok eksiği var fakat vakit buldukça geliştiriyorum. Asıl amacım ise django bilgimi geliştirmek.

Satır aralarında

Son yazımın üzerinden epey zaman geçmiş. En son yazımdan girmişken yazıya yazmadan geçmiyeyim. Sqlite3 ile uğraşım iyi gidiyor, kendisini kullanıyorum ve seviyorum, aynı zamanda aynı projeyi mysql ilede geliştiriyorum. Veritabanı inşallah ileride büyürse aradaki farkları daha kolay anlayabileceğimi umuyorum.

Django ile geliştirdiğim projem hafif hafif şekillenmeye başladı. Yerel ağ üzerindende arkadaşlarıma test ettirerek hataları alıyorum. Jquery ilede sayfaları biraz coşturmak için araştırma halindeyim, yakın bir zamanda biraz da görsellik kattıktan sonra github.com’da yazdığım kodları paylaşacağım.

Niyet: Üşenmesem de şuraya her hafta yazsam.
İstek: Django kodlayanlar ortak bir kaynak oluştumaları (türkçe).
Dua: İlim ile ilimlenelim inşAllah.