labu

Buat Aplikasi Hello World Menggunakan Kerangka Flask

Buat Aplikasi Hello World Menggunakan Kerangka Flask
Artikel ini akan membahas panduan menulis aplikasi hello world sederhana menggunakan framework “Flask” berbasis Python. Flask dapat digunakan untuk membuat aplikasi web yang minimal, dapat diperluas, dan canggih menggunakan seperangkat pustaka yang disertakan dalam modulnya. Semua contoh kode dalam tutorial ini diuji di Ubuntu 20.10 memiliki Python versi 3.8.6 dan Flask versi 1.1.2.

Tentang Flask

Flask adalah kerangka kerja pengembangan aplikasi web berbasis Python yang dirancang khusus agar minimal untuk Anda mulai. Ini membantu dalam pembuatan prototipe yang cepat, pengembangan yang cepat, dan penerapan yang cepat. Semua fitur lanjutan yang perlu Anda tambahkan ke aplikasi web Anda dapat ditambahkan melalui ekstensi. Situs resmi Flask menggambarkan dirinya sebagai kerangka kerja "mikro" karena ia menyerahkan semua keputusan besar kepada pengguna sendiri dan memutuskan sedikit atas nama mereka. Pengguna dapat memilih mesin templat mereka sendiri, perpustakaan manajemen basis data, alat validasi formulir, dan sebagainya, meskipun Flask memang datang dengan beberapa default yang waras.

Menginstal Flask di Linux

Jika Anda menggunakan Ubuntu, Anda dapat menginstal Flask dengan menjalankan perintah yang disebutkan di bawah ini:

$ sudo apt install python3-flask

Anda dapat menghindari penggunaan versi repositori dan menginstal Flask versi terbaru dari manajer paket “pip” dengan menjalankan dua perintah berikut secara berurutan:

$ sudo apt install python3-pip
$ pip3 menginstal labu

Jika Anda menggunakan distribusi Linux lainnya, cari paket "Flask" di manajer paket atau instal dari alat instalasi paket "pip". Instruksi terperinci lebih lanjut tersedia di sini.

Setelah instalasi selesai, Anda dapat memeriksa versi Flask dengan menggunakan perintah yang ditentukan di bawah ini:

$ python3 -c "impor labu; print(labu.__Versi: kapan__)"

Model Server-Klien

Seperti yang dinyatakan sebelumnya, Flask digunakan untuk mengembangkan aplikasi web. Biasanya, semua kerangka kerja pengembangan aplikasi web dengan Python dan bahasa pemrograman lainnya menggunakan arsitektur client-server. Flask juga menggunakan model client-server di mana pengguna dapat menulis logika sisi server untuk membuat aplikasi web atau situs web. "Klien" di sini mengacu pada browser web atau aplikasi lain yang memungkinkan rendering halaman web menggunakan teknologi HTML, JavaScript, dan CSS. Sementara "server" mengacu pada server lokal atau jauh tempat aplikasi Flask Anda yang ditulis dalam bahasa Python dijalankan.

Saat Anda menjalankan aplikasi Flask secara lokal di PC Anda, server lokal secara otomatis dibuat untuk melayani aplikasi web. Flask akan menampilkan URL localhost di terminal Anda. Anda dapat mengunjungi URL ini di browser web apa pun untuk melihat hasil akhirnya. Anda juga dapat mengatur server jarak jauh untuk memfasilitasi komunikasi antara klien dan server dan meluncurkan situs web atau aplikasi web publik Anda sendiri.

Anda dapat membuat kode HTML, JavaScript, dan CSS sisi klien yang diperlukan untuk aplikasi web Anda dengan menggunakan kode sisi server yang ditulis dalam Flask dan Python. Tetapi setelah aplikasi web diterapkan dan Anda menjalankannya di browser web, aplikasi web Anda tidak akan melihat atau memahami kode Python. Ini akan memproses HTML, JavaScript, dan CSS hanya karena hanya teknologi ini yang terutama didukung oleh browser web. Anda masih dapat berkomunikasi dengan server dari sisi klien menggunakan permintaan HTTP. Anda dapat sangat banyak mengirimkan data dari klien ke server, memprosesnya menggunakan beberapa logika sisi server dan mengembalikan hasilnya.

Jadi, tergantung pada jenis aplikasi web yang Anda kembangkan, Anda mungkin harus memutuskan di mana akan menerapkan logika: di sisi server atau sisi klien berdasarkan kasus per kasus.

Aplikasi Hello World Sederhana di Flask

Anda dapat menggunakan contoh kode di bawah ini untuk membuat aplikasi sederhana “Hello World” di Flask untuk memulai:

dari labu impor Flask
aplikasi = Labu(__nama__)
@aplikasi.rute('/')
def hello_world_app():
pesan = "Halo Dunia!!"
kembali pesan

Pernyataan pertama dalam contoh kode di atas mengimpor kelas "Flask" dari modul "flask". Setelah diimpor, Anda akan dapat menggunakan semua metode yang tersedia di kelas "Flask".

Dalam pernyataan berikutnya, sebuah instance baru dari kelas "Flask" dibuat dan nama file diberikan padanya sebagai argumen. Jika Anda hanya menggunakan satu ".py" tanpa tambahan "__init__.py" yang biasanya digunakan saat membuat struktur file untuk paket Python, namanya akan memiliki nilai hardcoded "__main__". Argumen “__name__” memberi tahu Flask tempat mencari file yang terkait dengan aplikasi flask saat ini yang sedang dieksekusi. Anda juga dapat menyediakan jalur kustom Anda sendiri ke file Flask utama Anda alih-alih memberikan argumen “__name__”. Tetapi biasanya, sebagian besar pengembang hanya menggunakan “__name__” dan ini tampaknya menjadi praktik standar.

Selanjutnya, "dekorasi" "aplikasi.route" dilampirkan ke fungsi "hello_world_app". Fungsi dekorasi memperluas atau memodifikasi fungsi yang dilampirkan, tanpa benar-benar mengubahnya. Di sini, “aplikasi.route” dekorator digunakan untuk menentukan jalur URL tempat fungsi terlampir akan dijalankan. Simbol “/” memberitahu Flask untuk menjalankan fungsi pada URL “/”, yang merupakan singkatan dari domain “root” atau URL “root”. Misalnya, jika URL untuk aplikasi Anda adalah “aplikasi.com”, fungsi akan dipicu untuk “aplikasi.com” URL. Anda dapat mengubahnya menjadi sesuatu yang lain juga. Misalnya, dengan menggunakan dekorator “@app.route('/helloworld')", Anda dapat memetakan fungsi ke "aplikasi.com/helloworld” URL.

Akhirnya fungsi "hello_world_app" digunakan untuk mengembalikan konten yang ingin Anda tampilkan di browser web saat aplikasi web Anda berjalan.

Menjalankan Aplikasi Flask

Untuk menjalankan aplikasi Flask di Linux, Anda perlu menjalankan perintah dalam format berikut:

$ ekspor FLASK_APP=utama.py
$ menjalankan labu

Ubah “utama.py” nama sesuai kebutuhan untuk mencocokkannya dengan milik Anda sendiri ."py" di mana Anda telah menulis kode Flask Anda. Perintah kedua menjalankan aplikasi Flask Anda. Anda juga dapat menjalankan perintah alternatif ini:

$ FLASK_APP=utama.labu py dijalankan

Setelah menjalankan perintah ini, Anda akan melihat beberapa output seperti ini:

Cukup buka URL yang disebutkan di terminal di browser web untuk melihat aplikasi Anda beraksi.

Anda dapat menjalankan aplikasi Flask dalam mode debug dengan menggunakan variabel lingkungan “FLASK_ENV” dalam format berikut:

$ FLASK_ENV=pengembangan FLASK_APP=utama.labu py dijalankan

Menggunakan Mesin Template Jinja2

Flask menggunakan "Jinja2" untuk mesin templat untuk memfasilitasi penulisan kode HTML dengan Python. Anda dapat menggunakannya untuk mengatur markup untuk “Hello World!!” pesan.

Buat direktori baru bernama "templat" tempat skrip Flask utama Anda berada. Di dalam direktori “template”, buat file baru bernama “hw_template.html”. Buka “hw_template.html” dan masukkan kode berikut di dalamnya:


Halo Dunia!!
% jika warna %

Halo Dunia!!


% lain %

Halo Dunia!!


% berakhir jika %

Kode ini ditulis dalam sintaks yang "Jinja2" mengerti. Anda dapat merujuk ke dokumentasi "Jinja2" yang tersedia di sini. Markup template memeriksa apakah variabel bernama "warna" telah diteruskan ke sana atau tidak. Jika ya, maka itu akan mengubah warna "Hello World"!!” pesan menggunakan nilai dari variabel “warna” yang diteruskan ke sana.

Untuk meneruskan variabel ke template “Jinja2”, Anda harus menulis kode dalam format berikut:

@aplikasi.rute('/')
def hello_world_app():
kembali render_template('hw_template.html', warna = "merah")

Metode "render_template" digunakan untuk membuat markup dari file template "Jinja2". Anda dapat memberikannya nama template yang ingin Anda render dan argumen apa pun yang ingin Anda sampaikan ke template. “hw_template.html" template yang digunakan di atas memproses variabel "warna" setelah kode Flask melewatinya menjadi variabel "warna" yang bernilai "merah". Setelah menjalankan contoh kode yang disebutkan di atas, Anda akan mendapatkan hasil berikut:

Anda juga dapat meneruskan nilai variabel dari URL itu sendiri. Lihat contoh kode di bawah ini:

@aplikasi.rute('/')
@aplikasi.rute('/')
def hello_world_app(color="biru"):
kembali render_template('hw_template.html', warna=warna)

Dua jalur atau rute URL dilampirkan ke fungsi "hello_world_app". Saat Anda mengunjungi domain root (contoh “aplikasi.com"), Anda akan melihat "Halo Dunia"!!” pesan dalam warna biru sebagai nilai default untuk variabel “warna” didefinisikan sebagai “biru” dan ini juga merupakan nilai yang Anda berikan ke template “Jinja2” juga.

Jalur kedua ditentukan oleh “@app.rute('/')” menggunakan sintaks khusus. Dalam simbol “<>”, Anda dapat menentukan variabel apa pun untuk diteruskan ke fungsi “hello_world_app”. Nilai default untuk variabel ini didefinisikan sebagai argumen untuk fungsi "hello_word_app". Anda kemudian meneruskan variabel kustom Anda sendiri sebagai argumen ke metode "render_template" dan menetapkan nilainya ke variabel yang Anda tetapkan saat mendekorasi fungsi dengan rute kustom baru.

Misalnya, “Halo Dunia !!” pesan akan berubah menjadi warna merah ketika Anda mengunjungi “aplikasi.com/red" URL tetapi akan tetap biru ketika Anda mengunjungi "aplikasi.com” URL. Berikut adalah perbandingan berdampingan:

Kesimpulan

Flask adalah kerangka kerja pengembangan aplikasi web yang kuat yang dapat digunakan untuk membuat aplikasi sederhana dan lanjutan. Tutorial ini terutama menjelaskan cara membuat "Hello World" sederhana!!" aplikasi. Anda dapat menghubungkannya ke database dan menggunakan ekstensi untuk lebih memperluas fungsinya. Lihat dokumentasi Flask untuk mengetahui lebih banyak tentang mengelola database dan ekstensi.

Cara Menampilkan Overlay OSD di Aplikasi dan Game Linux Layar Penuh
Memainkan game layar penuh atau menggunakan aplikasi dalam mode layar penuh bebas gangguan dapat memutus Anda dari informasi sistem yang relevan yang ...
5 Kartu Tangkap Game Teratas
Kita semua telah melihat dan menyukai gameplay streaming di YouTube. PewDiePie, Jakesepticye, dan Markiplier hanyalah beberapa pemain top yang telah m...
Cara Mengembangkan Game di Linux
Satu dekade yang lalu, tidak banyak pengguna Linux yang memprediksi bahwa sistem operasi favorit mereka suatu hari nanti akan menjadi platform game po...