Django Uygulama Notları

Django  Linux  Programming  Python  Web  Docker 

 24 Ağustos 2018 - Türkiye



Follow
Follow
Follow

18 dakikalık okuma

Kendi Django Projeni Oluştur

Django-framework


Docker Başlatma


sudo systemctl status docker

sudo systemctl enable docker

sudo systemctl start docker

docker imajının indirilmesi


sudo docker run --net="host" -v /home/$USER:/home/$USER -v /var/cache/pisi/archives:/var/cache/pisi/archives -v /var/cache/pisi/packages:/var/cache/pisi/packages -itd --security-opt=seccomp:unconfined ertugerata/pisi-chroot-beta bash

docker çalıştırılması


sudo docker ps

sudo docker attach container_name

depo ve servislerin aktif hale getirilmesi


pisi ar beta https://ciftlik.pisilinux.org/2.0-Beta.1/pisi-index.xml.xz

veya

pisi ar pisi-2.0 https://ciftlik.pisilinux.org/2.0/pisi-index.xml.xz
service dbus start && pisi it gawk --ignore-dependency && pisi ur && pisi up -dvsy && pisi it python-devel openssl-devel git pip nodejs -y

Eğer Dosya Çakışması varsa;

rm -rf /usr/share/man/man4

docker sandık temizliği



sudo docker stop container_name

sudo docker rm container_name

sudo docker system prune -a --volumes

Django Uygulaması


Kurulum
Yönetici Kontrol Paneli
Bir App Oluşturmak
Template and View Ekleme
Weather API Kullanımı
Şablondaki Verileri Görüntüleme
Formu Oluşturmak
Sonuç

Bu makalede, çeşitli şehirler için mevcut hava durumunu görüntüleyen basit bir Django uygulaması oluşturacağız. Mevcut hava durumu verilerini almak için Açık Hava Durumu Haritası API’sini kullanacağız.

Uygulamanın basit olmasına rağmen, bir veritabanı ile çalışacağız ve bir form oluşturacağız, böylece burada kullanılan kavramlar daha karmaşık projelere uygulanabilir.

Bu makaledeki kod Python 3 ve Django 2.0 ile yazılmıştır, bu nedenle bu eğiticiyi takip etmek için her ikisine de biraz aşina olmalısınız. Her ikisine de giriş yapmak isterseniz, “İlk Python ve Django Uygulamanızı Oluşturun” adlı makalemize göz atın. Bu makale Django 1.X kullanıyor, ancak tek farkın URL’lerin nasıl tanımlandığıyla ilgili olduğunu göreceksiniz.

İşte işimiz bittiğinde uygulamamızın benzeyeceği şey buradadır.

Django-framework

Weather • Bursa


Kurulum


Django kurulumu, başka herhangi bir Python kütüphanesi kurmak gibidir: sanal bir ortam başlatabilir ve Django’yu kurmak için pip çalıştırabilir ya da bir proje dizini oluşturabilir, pipenv çalıştırabilir ve pipenv kabuğunu aktive edebilirsiniz. Her iki yöntem de işe yarar, fakat bu yazı için pipenv kullanacağım.

Pipenv, Pipfile ve Pipfile.lock (deterministik yapıların üretilmesinden sorumlu dosya) olan require.txt dosyasının yerini alan iki ek dosyadan yararlanır.

pipenv install django

Bu sizin için en son Django sürümünü yükleyecektir. Bu yazıyı yazarken, Django 2.1 sürümündedir.

Django yüklendikten sonra, henüz oluşturmadıysanız, bu proje için bir dizin oluşturun ve bu dizine gidin. Bir kez orada, Django’nun projeyi oluşturmanız için verdiği startproject komutunu çalıştırabilirsiniz.

Geçerli dizinde veya verilen hedefte verilen proje adı için bir Django proje dizin yapısı oluşturur.

Varsayılan olarak, yeni dizin, manage.py ve bir proje paketi (settings.py ve diğer dosyalar içeren) içerir.

django-admin startproject the_weather

Django dizininizde birkaç yeni dosya oluşturmuş olmalı.

Geliştirme sunucumuzu başlatmayı deneyelim. Bunu yapmak için, yeni dizine gidin ve terminalinizde runserver komutunu çalıştırmak için manage.py kullanın:

Yerel makinede hafif bir geliştirme Web sunucusu başlatır. Varsayılan olarak, sunucu 127.0.0.1 IP adresindeki bağlantı noktası 8000’de çalışır. Bir IP adresi ve port numarasını açıkça iletebilirsiniz.

cd the_weather python manage.py runserver

Terminalinize bakarsanız, uygulamanızın URL’sini görmelisiniz. Varsayılan olarak 127.0.0.1:8000 olmalıdır.

Tarayıcınızı açın ve bu URL’ye gidin.

Bunu görürseniz, Django’yu doğru şekilde kurduğunuzu biliyorsunuzdur. Bunu kesinlikle görmelisiniz çünkü henüz kodu değiştirmeyi denemedik bile.


Yönetici Kontrol Paneli


Ardından Django’nun bize verdiği yönetici kontrol paneline bir göz atmak istiyoruz. Bunu yapmak için öncelikle veritabanımızı taşımalıyız, bu da Django’nun varsayılan uygulamalar için gerekli olan önceden tanımlanmış tabloları oluşturacağı anlamına gelir. Bunu basit bir şekilde yapmak için, migrate komutunu çalıştırınız. CTRL + C kullanarak sunucuyu durdurun ve sonra çalıştırın:

Migrations, Django’nun, modelleriniz için yaptığınız (alan ekleme, bir modeli silme, vb.) değişiklikleri veritabanı şemasına aktarma biçimidir.

python manage.py migrate

Basit bir Django ayar dosyası (mysite.settings) ALLOWED_HOSTS = [‘www.example.com’] DEBUG = False DEFAULT_FROM_EMAIL = ‘webmaster@example.com’

Bilgi! Bir Django ayarları dosyası, Django kurulumunuzun tüm yapılandırmasını içerir.

Bilgi! Bir ayar dosyası, sadece modül seviyesi değişkenlere sahip bir Python modülüdür.

Note! DEBUG değerini False olarak ayarlarsanız, ALLOWED_HOSTS ayarını doğru şekilde ayarlamanız gerekir.

Bu komutu çalıştırarak, Django sizin için bir SQLite veritabanı oluşturdu; ayarlardaki[settings.py] varsayılan veritabanını ve bu veritabanına birkaç tablo ekledi. Proje dizininizde yeni bir db.sqlite3 dosyası görüyorsanız, veritabanının oluşturulup oluşturulmadığını bileceksiniz.

Django tablolarından biri, uygulamamızdaki herhangi bir kullanıcıyı saklamak için kullanacağımız bir kullanıcı tablosudur. İnşa ettiğimiz uygulama[app] hiçbir kullanıcıya ihtiyaç duymuyor, ancak yönetici kullanıcısına sahip olmak, yönetici kontrol paneline erişmemize izin verecek.

Bir yönetici kullanıcısı oluşturmak için, createuperuser komutunu çalıştırırız.

Bu komut yalnızca Django’nun kimlik doğrulama sistemi (django.contrib.auth) kuruluysa kullanılabilir.

Bir süper kullanıcı hesabı oluşturur (tüm izinlere sahip bir kullanıcı). İlk bir süper kullanıcı hesabı oluşturmanız gerekiyorsa veya siteniz için süper kullanıcı hesaplarını programsal olarak oluşturmanız gerekiyorsa bu özellik yararlıdır.

python manage.py createsuperuser

Yönetici kullanıcınız için bir kullanıcı adı, e-posta adresi ve bir şifre vererek talimatları izleyin. Bunu bir kez yaptıktan sonra, sunucuyu yeniden başlatmanız ve yönetici kontrol paneline gitmeniz gerekir.

python manage.py runserver

Uyarı! Bu sunucu, WSGI_APPLICATION ayarı tarafından belirtilen WSGI uygulama nesnesini kullanır. BU SUNUCUYU ÜRETİM AYARINDA KULLANMAYIN. Güvenlik denetimleri veya performans testleri ile geçmemiştir. (Ve işte böyle kalıyor. Web sunucularını değil, Web altyapıları yapmak için çalışıyoruz, bu nedenle bir üretim ortamını idare edebilmek için bu sunucuyu geliştirmek Django’nun kapsamı dışındadır.)

Bilgi! Geliştirme sunucusu, gerektiğinde her istek için Python kodunu otomatik olarak yeniden yükler. Kod değişikliklerinin etkili olması için sunucuyu yeniden başlatmanız gerekmez. Ancak, dosya ekleme gibi bazı eylemler yeniden başlatmayı tetiklemez, bu nedenle bu durumlarda sunucuyu yeniden başlatmanız gerekir.

Not! Linux kullanıyorsanız ve pyinotify’ı kurarsanız, sunucuyu otomatik olarak yüklemek için çekirdek sinyalleri kullanılır (her saniye dosya değiştirme zaman damgası yoklamak yerine). Bu, büyük projelere daha iyi ölçeklendirme, kod değiştirmeye yanıt süresini azaltma, daha güçlü değişiklik algılama ve pil kullanımı azaltma sunar.

Ardından 127.0.0.1:8000/admin adresine gidin.

Bu sayfaya gitmemizin nedeni, urls.py adresinde yönetici ayarlandığından kaynaklanmaktadır. Tebrikler sayfasını görmemizin nedeni, kendi URL’lerinizi ekleyene kadar Django’nun size vermesidir.

Az önce oluşturduğunuz kullanıcı adı ve şifre ile giriş yaptığınızda, bu sayfayı görmelisiniz.

Gruplar ve kullanıcılar, Django’ya erişim sağlayan iki modeli temsil ediyor. Modeller bir veritabanındaki tabloların sadece kod gösterimleridir. Django daha fazla tablo oluştursa da, geri kalanlarına doğrudan erişmeye gerek yoktur, bu nedenle hiçbir model oluşturulmamıştır.

Eğer ‘kullanıcı’ seçeneğini tıklarsanız, kullanıcı hakkında daha fazla ayrıntı görmelisiniz ve oluşturduğunuz kullanıcıyı görmelisiniz. Orada ne olduğunu görmek için panodaki farklı bağlantıları tıklatmanızı tavsiye ederim. Sadece kullanıcınızı silmemek için dikkatli olun, aksi halde createuperuser programını tekrar çalıştırmanız gerekir.

Yönetici kontrol panelini şimdilik bırakıp kodlara gidelim. Hava durumu uygulamamız için projemizin içinde bir uygulama oluşturmamız gerekiyor.


Bir App Oluşturmak


Django’da, uygulamaları kullanarak projenizdeki işlevleri ayırabilirsiniz. Uygulamanın kafa karıştırıcı bir ad olduğunu düşünüyorum çünkü genellikle bir uygulamanın tamamını tüm proje olarak görüyoruz, ancak Django söz konusu olduğunda, uygulama projenizdeki belirli bir işlev parçasını ifade eder. Örneğin, settings.py dosyasına bakarsanız, INSTALLED_APPS listesini görürsünüz.

Yüklü uygulamalardan ilki, django.contrib.admin az önce kullandığımız şeydir. Tüm yönetici işlevlerini ele alıyor ve başka hiçbir şeyi ele almıyor. Varsayılan olarak projemizdeki başka bir uygulama, yönetici kontrol panelimize giriş yapmamızı sağlayan kimlik doğrulama gibi şeylerdir.

Bizim durumumuzda, hava durumunu göstermekle ilgili her şeyi ele almak için yeni bir uygulama oluşturmamız gerekiyor. Bu uygulamayı oluşturmak için, sunucuyu CTRL + C ile durdurun ve çalıştırın:

Geçerli dizinde veya verilen hedefte verilen uygulama adı için bir Django uygulama dizin yapısı oluşturur.

python manage.py startapp weather

Bilgi! Varsayılan olarak, oluşturulan dizin bir models.py dosyası ve diğer uygulama şablonu dosyalarını içerir. (Daha fazla bilgi için kaynağa bakın.) Sadece uygulama adı verilirse, uygulama dizini geçerli çalışma dizininde oluşturulacaktır.

İsteğe bağlı varış yeri sağlanırsa, Django yeni bir tane oluşturmak yerine mevcut dizini kullanır. Geçerli çalışma dizinini göstermek için ‘.’ Kullanabilirsiniz.

programs

Treee • Django App

Startapp çalıştırarak, Django, projemize yeni bir dizin ve daha fazla dosya ekledi.

En son oluşturulan dosyalar ile, uygulama dizinimizde urls.py adlı yeni bir dosya oluşturalım.

programs

Weather • urls.py

Bu dosya, the_weather dizinindeki urls.py’ye benzer. Fark, bu urls.py dosyasının uygulamanın kendisiyle alakalı tüm URL’leri içermesidir. ‘

Henüz bir URL belirtmiyoruz, ancak, projemizi tanımak ve uygulamanıza özel tüm URL’leri uygulama urls.py dosyasına yönlendirmek için projeyi ayarlayabiliriz.

Önce, INSTALLED_APPS listesine gidin ve bu uygulamayı listeye ekleyin.

programs

Weather • settings.py

Bu, Django’yu hava durumu uygulamasını projemizde kullanmak istediğimizi bilmesini sağlar. Bunu yaparak, Django, “migrations” ve URL’leri nerede arayacağını bilecek.

Ardından, uygulama urls.py dosyasına işaret etmek için orijinal urls.py dosyasını değiştirmemiz gerekiyor. Bunu yapmak için yönetici kontrol paneli için mevcut yolun altına bir satır ekliyoruz. Ayrıca, ‘url.py’ uygulamamıza işaret edebilmek için ‘include’ i de içe aktarmamız gerekiyor.

programs

Weather • urls.py

Boş dizge’’, uygulamamızın giriş kapısı için bir bitim noktası kullanmayacağımız anlamına gelir. Bunun yerine, uygulamanın belirli bir son noktayla ilgilenmesine izin vereceğiz. Hava durumu uygulamamızla ilgili herhangi bir şey elde etmek için 127.0.0.1:8000/weather/ yazmamız gerektiği anlamına gelen bir yol (‘weather/’, …)) gibi kolayca bir şey koyabilirdik. Fakat projemiz basit olduğundan, burada yapmayacağız.


Template and View Ekleme


Şimdi yapacağımız ilk ilginç şey. Projemize “template” eklememiz gerekiyor.

Django’daki bir şablon”template”, şablonu dinamik yapan ekstra sözdizimine olanak veren bir HTML dosyasıdır. Diğer şeylerin yanı sıra değişkenler, ififadeler ve döngüler eklemek gibi şeyleri yapabileceğiz.

Bilgi! Bir web çerçevesi olan Django, HTML’yi dinamik olarak oluşturmak için uygun bir yola ihtiyaç duyar. En yaygın yaklaşım şablonlara dayanır. Bir şablon, istenen HTML çıktısının statik kısımlarını ve dinamik içeriğin nasıl ekleneceğini açıklayan bazı özel sözdizimini içerir.

Başlamak için, herhangi bir şablon sözdizimi içermeyen bir HTML dosyasına sahibim, ancak bu bizim başlamamız için yeterli olacaktır.

Bu dosyayı koymak için bir şablon dizini oluşturacağız.

cd weather

mkdir templates

cd templates

mkdir weather

Ayrıca, uygulamamızla aynı ada sahip başka bir dizin oluşturduk. Bunu yaptık çünkü Django, sahip olduğumuz çeşitli uygulamalardan tüm şablon dizinlerini birleştiriyor. Dosya isimlerinin çoğaltılmasını önlemek için, kopyaları önlemek amacıyla uygulamamızın adını kullanabiliriz.

Hava dizininin içinde index.html adlı yeni bir dosya oluşturun. Bu bizim ana şablonumuz olacak. İşte şablon için kullanacağımız HTML.

Şimdi şablonumuzu oluşturduğumuza göre, bunu bir görünüm ve URL kombinasyonu oluşturalım.

programs

Weather • views.py

Django’daki Görünümler, işlevler veya sınıflardır. Durumumuzda basit bir görünüm oluşturduğumuzdan, bir işlev oluşturacağız. Bu işlevi görünümlerinize ekleyin:

Kök URL olan uygulamamızın dizininde olacağından, görünümümüzü ‘index’ olarak adlandırıyoruz. Şablonun oluşturulmasını sağlamak için, render işlevi için gerekli olan isteği ve render etmek istediğimiz şablon dosyasının adını, bu durumda weather / index.html.

Bu görüşe isteği gönderecek olan URL’yi ekleyelim. Uygulamaya ait urls.py dosyasında, urlpatterns listesini güncelleyin.

programs

Weather • urls.py

Bu, yeni oluşturduğumuz görünümü referans almamıza izin veriyor.

Django, herhangi bir URL’yi bir bitiş noktası olmadan eşleştirecek ve oluşturduğumuz görüntüleme işlevine yönlendirecektir.

Proje köküne geri dönün, sunucuyu başlatın ve tekrar 127.0.0.1:8000 adresine gidin.

python manage.py runserver

Şimdi gördüğümüz sadece index.html dosyasında bulduğunuz HTML’nin sonucudur. Bir şehir ve Las Vegas’ın hava durumunu eklemek için bir giriş göreceksiniz. Ancak, form çalışmıyor ve hava durumu yalnızca bir yer tutucudur, ancak endişelenmeyin, çünkü bu uygulama için bunları oluşturacağız.


Weather API Kullanımı


Şimdi yapmak istediğimiz Açık Hava Haritası API’sına kaydolmak. Bu, uygulamamıza eklediğimiz herhangi bir şehir için gerçek hava durumunu almamıza izin verecektir.

Siteye gidin, bir hesap oluşturun ve ardından kontrol panelindeki API tuşlarına gidin. Bir isim girin ve yeni bir API anahtarı oluşturun. Bu anahtar hava durumunu almak için API’yı kullanmamıza izin verecektir.

Kullanacağımız tek uç nokta aşağıdadır. Bu nedenle, API anahtarınızla aşağıdaki URL’yi değiştirerek ve tarayıcınızdaki URL’ye giderek döndürülen gerçek verileri görebilirsiniz. API anahtarınızın aktif olması birkaç dakika sürebilir, bu nedenle ilk başta çalışmazsa birkaç dakika sonra tekrar deneyin.

https://api.openweathermap.org/data/2.5/weather?q=las%20vegas&units=metric&appid=YOUR_APP_KEY

Bununla, verileri uygulamamıza eklemek için bir istek ekleyelim.

Önce, uygulamanızı içinden API’yi çağırabilmek için istekleri yüklememiz gerekecek.

pip install requests

Sahip olduğumuz URL’ye bir istek göndermek için dizin görünümümüzü güncelleyelim.

Bu üç satırda, istek gönderecek URL’yi ekliyoruz. Kullanıcıların kendi şehirlerini ekleyebilmelerine izin verdiğimiz zaman, şehir için bir yer tutucuyuz.

Şimdilik şehri Las Vegas olarak ayarlayacağız, ancak daha sonra bu veri tabanından şehirlere ayarlanacak.

Son olarak, isteği kullanarak şehri kullanarak URL’ye göndeririz ve o şehrin JSON temsilini alırız. Bunu konsola yazdırırsak, URL’yi adres çubuğumuza koyduğumuzda gördüğümüz verilerin aynısını görebiliriz.

Sunucunuzu yeniden başlatırsanız ve sayfayı yeniden yüklerseniz, verilerin konsolunuza yazdırıldığını görürsünüz.


Şablondaki Verileri Görüntüleme


Ardından, verileri kullanıcıya göstermesi için kullanıcıya vermemiz gerekiyor.

İhtiyacımız olan tüm verileri saklamak için bir sözlük oluşturalım. Bize gönderilen verilerin temp, açıklama ve ikonuna ihtiyacımız var.

Şimdi istediğimiz tüm bilgiler, bunu şablona aktarabiliriz. Şablona aktarmak için içerik denen bir değişken oluşturacağız. Bu, değerlerini şablonun içinde kullanmamıza izin veren bir sözlük olacaktır.

Ve sonra render olarak, içeriği üçüncü argüman olarak ekleyeceğiz.

Bağlam içinde eklenen hava durumu verileriyle, verileri eklemek için şablona gidelim.

Şablonun içinde, tek yapmamız gereken, girdiğim değerler yerine değişkenleri kullanmak için HTML’yi değiştirmektir. Değişkenler etiketlerini kullanacak ve içerik sözlüğünüzün içindeki herhangi bir şeye referans göstereceklerdir.

Django’nun sözlük tuşlarını dönüştürdüğünü unutmayın, böylece sadece nokta notasyonu kullanarak bunlara erişebilirsiniz. Örneğin, weather.city bize şehir adını verecektir. Python’da yaptığımız gibi hava [‘şehir’] kullanmıyoruz.

Kutunun adını bulun ve buna güncelleyin:

Değiştirilen tüm değişkenler ile, şimdi şehrimiz için mevcut hava durumunu görmeliyiz.

Harika! Şimdi bir şehrin hava durumunu görebiliriz, ama şehri kodlamak zorunda kaldık. Şimdi yapmak istediğimiz, veritabanından çekip veritabanımızdaki şehirleri gösteriyor.

Bunu yapmak için, hava durumunu bilmek istediğimiz şehirleri tutmak için veritabanımızda bir tablo oluşturacağız. Bunun için bir model oluşturacağız.

Hava durumu uygulamanızdaki models.py adresine gidin ve aşağıdakileri ekleyin:

programs

Weather • models.py

Bu, veritabanımızda isim olarak adlandırılan ve şehrin adı olan bir sütuna sahip bir tablo oluşturacaktır. Bu şehir sadece bir ip olan bir charfield olacak.

Veritabanındaki bu değişiklikleri almak için, veritabanını güncellemek ve bu değişiklikleri uygulamak için geçiş yapmak üzere kod üretmek için makemigrations komutunu çalıştırmamız gerekir. Şimdi bunu yapalım.

python manage.py makemigrations
python manage.py migrate

Bu modeli yönetici kontrol panelimizde görebileceğimiz yere yapmamız gerekiyor. Bunu yapmak için, onu admin.py dosyasına kaydetmeliyiz.

programs

Weather • admin.py

Kenti yönetici kontrol panelinde bir seçenek olarak görürsünüz.

Daha sonra yönetici kontrol paneline gidip bazı şehirleri ekleyebiliriz. Üç ile başlayacağım: Londra, Tokyo ve Las Vegas.

Veritabanındaki girişlerle, bu girdileri bizim görüşümüzle sorgulamamız gerekir. Şehir modelini içe aktararak ve ardından bu modeli tüm nesneler için sorgulayarak başlayın.

Şehirlerin listesi olduğundan, bunların üstesinden gelmek ve her biri için hava durumunu almak ve sonunda şablona geçirilecek bir listeye eklemek istiyoruz.

Bu, ilk durumda yaptığımızın bir varyasyonudur. Diğer fark ise, her sözlüğü bir listeye ekliyor ve ekliyoruz. Orijinal şehir değişkenini döngüdeki bir şehir değişkenine göre kaldırırız.

Cool, bu yüzden verilere sahibiz. Şimdi, tek bir sözlük yerine bu listeyi geçmek için içeriği güncelleyelim.

Ardından, şablonun içinde, bu listeye geçip listedeki her şehir için HTML’yi oluşturmamız gerekiyor. Bunu yapmak için, şehir için tek bir kutu oluşturan HTML’nin etrafında bir döngü oluşturabiliriz.

Korku veren! Şimdi veritabanında sahip olduğumuz tüm şehirlerin verilerini görebiliyoruz.


Formu Oluşturmak


Yapmak istediğimiz son şey, kullanıcının doğrudan formda bir kullanıcı eklemesine izin vermektir.

Bunu yapmak için bir form oluşturmamız gerekiyor. Formu doğrudan oluşturabiliriz, ancak formumuz modelimizle tam olarak aynı alana sahip olacağından, bir ModelForm kullanabiliriz.

Forms.py adlı yeni bir dosya oluşturun.

programs

Weather • forms.py

Formu görmek için, bunu kendi görünümünde oluşturmalı ve şablona aktarmalıyız.

Bunu yapmak için, formu oluşturmak için dizin videosunu güncelleyelim. Artık ihtiyacımız olmadığından eski şehir değişkenini aynı anda değiştireceğiz. Ayrıca, formun şablona geçirilmesi için içeriği güncellememiz gerekir.

Şimdi şablonda, görünümünden formu kullanmak için form bölümünü ve Django’daki POST istekleri için gerekli olan bir csrf_token’i güncelleyelim.

HTML çalışmamızdaki form ile birlikte, form verilerini geldiğinde ele almamız gerekiyor. Bunun için, bir POST isteğini kontrol eden bir blok oluşturuyoruz. Hava durumu verilerini yakalamaya başlamadan önce, istek türüne ilişkin kontrolleri eklememiz gerekiyor. Böylece, eklediğimiz şehir için verileri hemen alıyoruz.

Request.POST ileterek, form verilerini doğrulayabileceğiz.

Artık bir şehrin adını yazabilmeniz, eklemeyi tıklayabileceğinizi ve görebildiğinizi görebilmeniz gerekir. Miami’yi bir sonraki şehir olarak ekleyeceğim.

Eğer bloktan çıkarsak, form yeniden oluşturulur, böylece seçersek başka bir şehir ekleyebiliriz. Kodun geri kalanı aynı şekilde davranacaktır.


Sonuç


Ve bu kadar! Uygulamamızdaki birden çok şehir için hava durumunu takip etmenin bir yolunu şimdi sunuyoruz.

Bu yazıda, bu çalışmayı elde etmek için çeşitli Django parçalarıyla çalışmak zorunda kaldık: görüşler, modeller, formlar ve şablonlar. Ayrıca gerçek hava durumu verilerini almak için Python kitaplık isteklerini kullanmak zorunda kaldık. Bu nedenle, uygulama basit olsa da, uygulamalarda aynı kavramların çoğunu daha karmaşık bir şekilde kullanacaksınız.

Django, modellerinin tartışmasız en önemli parçası hakkında daha fazla bilgi edinmek isterseniz, Django Database Essentials adlı ücretsiz kursuma katılabilirsiniz.

Django app build within the docker image

    pip install django==1.8

    pip install npm

    pip install --upgrade git+https://github.com/mysteryjeans/doorsale.git#egg=Doorsale

    git clone https://github.com/mysteryjeans/doorsale-demo.git

    npm install -g less yuglify

    cd doorsale-demo

    python manage.py runserver

    docker save container_name > /home/$USER/export.tar

    docker load  • /home/$USER/export.tar

[(Django Site)]

Sources

  1. A Django forum engine for building powerful community driven websites.
  1. django todo app


Son Değişim: 10 Haziran 2021

Paylaş:



En Yeni İçerikler