[EĞİTİCİ] Şişe I: Temel

Dinlenmek için biraz boş zamanım olduğu için (bir süre proje yapmaktan veya oyun oynamaktan), Flask (Python) ile web geliştirme hakkında bu makaleyi (veya belki de makaleleri) yazmaya karar verdim. Flask'ın ne olduğunu açıklamayı bırakmayacağım, bunu Hypertext'te zaten açıklıyorlar ve benden çok daha iyi açıklıyorlar.

Python ve HTML5 bilginiz yoksa en iyisi devam etmemek ve önce Python ve HTML5 belgelerini ve kılavuzlarını okumaktır.

Montaj

Bu noktada (işletim sistemi ne olursa olsun) halihazırda Python kurulu olmalı, bu yüzden sadece Flask'ı kurmalıyız

$ sudo pip install Flask

Kolay değil mi?

Selam Dünya

Flask'ta klasik "Merhaba Dünya" yı şu şekilde oluşturabiliriz:

şişesi1

Kodumuzu hello.py olarak kaydedip çalıştırıyoruz

$ python hello.py
* Running on http://localhost:5000/

Şimdi uygulamamız http: // localhost: 5000 / adresinde çalışıyor.

Çok kolay, değil mi?

Basit bir blog

Adım 0: klasörleri oluşturma

Başlamadan önce, uygulamamız için aşağıdaki klasörlere ihtiyacımız var:

klasörler

Proje klasörü istediğiniz herhangi bir ada sahip olabilir, yalnızca uygulamanızı alacağınız klasördür. Statik klasörde, HTTP aracılığıyla kullanıcılara sunulan dosyalar olacaktır. Css ve js dosyalarınızı koymanız gereken yer burasıdır. Şablonlar klasörü, uygulamanızın şablonlarının (html5) olacağı yerdir.

Adım I: Veritabanı şeması

Önce veritabanı şemasını oluşturacağız. Bu uygulama için sadece bir veri tabanına ihtiyacımız olacak. Aşağıdaki kodu Proje klasöründeki "schema.sql" adlı bir dosyaya girin.

plan

Bu şema, girişler adı verilen tek bir tablodan oluşur ve bu tablonun her satırının bir kimliği, bir başlığı ve bir metni vardır. Bu kimlik, otomatik olarak artan bir tam sayı ve birincil anahtardır, diğer ikisi dizelerdir.

Adım II: İlk uygulama kodu

Şematiğe sahip olduğumuza göre, uygulama modülünü oluşturabiliriz. Proje klasörünün içinde olması gereken buna flaskr.py diyelim. Başlamak için, gerekli içe aktarımları ve yapılandırma bölümünü ekleyeceğiz. Küçük uygulamalarda, yapılandırmayı doğrudan yapacağımız modülde bırakabiliriz. Bununla birlikte, en iyi ve en doğru şey, bir .ini veya .py yapılandırma dosyası oluşturmak, onu yüklemek ve oradan değerleri içe aktarmak olacaktır.

Flaskr.py dosyasında:

py

Secret_key, oturumları güvende tutmak için gereklidir. Bu anahtarı akıllıca seçin. Hata ayıklama bayrağı etkileşimli hata ayıklayıcıyı etkinleştirir veya devre dışı bırakır. Kullanıcıların sunucunuzda kod çalıştırmasına izin vereceğinden, bir üretim sisteminde hata ayıklamayı asla açık bırakmayın!

Artık uygulamamızı oluşturabilir ve flaskr.py'deki yapılandırmayla başlayabiliriz:

uygulamayı yükleyeceğiz

Ayrıca belirtilen veritabanına kolayca bağlanmak için bir yöntem ekleyeceğiz. Bu, istek üzerine bir bağlantı açmak için kullanılabilir. Bu daha sonra işe yarayacak.

tablo 4

Son olarak, dosyayı bağımsız bir uygulama olarak yürütmek istiyorsak sunucunun yürüteceği dosyanın sonuna bir satır ekliyoruz:

tablo 5

Bununla, uygulamayı sorunsuz bir şekilde başlatabilmelisiniz. Şimdi aşağıdaki komutu kullanıyoruz:

$ python flaskr.py

URL ile birlikte sunucunun başladığını belirten bir mesaj göreceksiniz.

URL'ye erişirsek, henüz bir web sitemiz olmadığı için bize 404 hatası verir. Ama buna biraz sonra odaklanacağız. İlk önce veritabanını çalıştırmalıyız.

Adım III: Veritabanının oluşturulması

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.

  1.   Faustin dijo

    Merhaba yazı için teşekkürler. Tüm rotaların Django stilinde bir arada olması hakkında ne düşünüyorsunuz? Ekspres, Matara veya Şişe tarzında her işlev için rotaya sahip olmanın avantajları nelerdir?

    1.    Ivan Molina Rebolledo dijo

      Django'yu denemedim (İstersen beni öldür) ama program yapan her kimse için kolaylık sağladığını söyleyebilirim. (Yanlışsam düzelt)

  2.   Ivan Molina Rebolledo dijo

    Makale bitmedi !! Kim yayınlamaya cesaret etti? D:

  3.   Guille dijo

    Aynı yazar "Conciste" kaçış gibi yazım hataları, yorumunda "Corriganme" diyor, bir yazım denetleyicisinin kurulması ve bazı kelimelerin altında görünen kırmızı çizgilere bakılması güzel olurdu. Yazmayı ve dolayısıyla incelemeyi bitirmediği de doğrudur.

  4.   erm3nda dijo

    Sanırım bir pislik gibi görünen bir sonraki düğmeyi arayan ... sayfayı çevirmek için "falan" arayan tek kişi ben değilim.

  5.   dil dijo

    Umarım daha fazlası gelir, çok iyi iş çıkar