django static files -bootstrap- problemi çözümü

 

Bu yazımda django template’lerine eklediğimiz bootstrap ya da diğer js/css dosyalarımızın düzgün çalışabilmesi için gerekli static dosyası konfigrasyonundan bahsedeceğim.

Kısaca çözümü yazıyorum;

settings.py içerisinde INSTALLED_APPS adlı listede

'django.contrib.staticfiles' eklenmiş olmalı.

bootstrap kullanacağınız template'ler için projeadı/projeUygulaması içerisinde
 'templates' adında bir klasör açın.

TEMPLATES' listesinde DIRS key'ini
'DIRS': [os.path.dirname(__file__), 'templates'] 

şeklinde ayarlayın.

projeadı/projeUygulaması içerisinde 'static' adında bir klasör açıp
 içerisine bootstrap dosyalarınızı atın (css,js, gibi) 

settings.py içerisinde herhangi bir yere 

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
    'C:/ProjeYolu/static',
]

değerlerini yazın.

settings.py içerisinde
STATIC_URL = "/static/" değerinizin doğru olduğundan emin olun.

artık template'leriniz içerisinde /static/css/bootstrap.css şeklinde ekleme yapabilirsiniz

Ayrıca,
 eğer projenizi tek bir settings.py üzerinden yönetiyorsanız 
settings.py içerisindeki BASE_DIR değerini
BASE_DIR = os.path.dirname(os.path.abspath(__file__))

şeklinde ayarlamanız gerekiyor.

 Kolay gelsin, iyi çalışmalar.








01 – Proje Oluşturmak- Django/Python

Django ile proje oluşturmak için projenizin nerede olmasını istiyorsanız command line’dan cd komutu ile oraya giderek aşağıdaki komutu çalıştırmanız yeterlidir.

django-admin startproject projeadi

Bu komut command line o sırada hangi directory'deyse oraya şu dosyaları oluşturur.
manage.py
    projeadi/
        __init__.py
        settings.py
        urls.py
        wsgi.py

Burada;
 manage.py projenizi yönetmenizi/etkileşiminizi sağlar(çalıştırmak gibi).
 projeadi/ folder'ı ise aslında gerçek workspace'iniz diyebilirim. Proje dosyaları
burada saklanır.
__init__.py python'a bulunduğu dosyanın python paketi olarak yorumlanmasını söyler.
settings.py içerisine ayarları/konfigurasyon özelleştirmelerimizi yazarız. İleride
değineceğiz ancak database bilgileri ya da diğer ayarlar/bilgiler burada bulunacak.

 urls.py içerisine aslında bulunan url'leri, içerik uzantılarını yazacağız.
 wsgi.py şimdilik pek bi işimiz yok. Bunun kullanım amacı uygulamayı barındıracak
serverin konfigurasyonları. Ancak biz kolayca geliştirme amaçlı serverı kullanarak
çalışmalarımızı sürdüreceğiz.

 İlk projemizi çalıştıralım.
 Commandline'dan projemizin bulunduğu yere giderek şu komutu çalıştırıyoruz.
python manage.py runserver

 projemiz default olarak burada 127.0.0.1:8000 çalışmaya başladı.
'Welcome to Django" , "it worked" vs. yazacaktır.
 Bu aslında projemizin giriş sayfası diyebiliriz.
 Zaten başka birşey de yok henüz :) -admin bölümü dışında- 

Ek olarak, projenizi başka bir port ya da ip üzerinde çalıştırmak isterseniz
bunu argüman olarak gönderebilirsiniz.
$ python manage.py runserver 0.0.0.0:8080 

gibi.