Flask Python OK
Flask Python OK
2022
UNIVERSAL INTERNET OF
THINGS
[Flask-Python]
HTTP Method
Variable Rules 06 09 Sending data from template
Static Files
Routing
05 10 Directory
Penerapan
Cookies
Application 04 Flask-Python 11 Set cookies
Get cookies
Session
Environment
Prerequisite
03 12 Jenis session
Install virtual environment
Pengantar SQLite
Flask- 01 14 Create DB
View
01
Pengantar
Flask adalah web framework yang ditulis dalam bahasa pemrograman Python dan
termasuk dalam jenis micro framework dengan fitur yang sederhana, lebih ringan,
dan tidak tergantung dengan library luar. Flask menyediakan Werkzeug untuk
menerima request (URL) dan memberikan respon serta Jinja2 sebagai template
engine untuk menampilkan data dan menuliskan logika pada tampilannya
Overview
02
Cara kerja Flask
Apa itu web framework?
Apa itu WSGI?
Apa itu Werkzeug?
Cara kerja Jinja2
Cara Kerja Flask
Apa itu web framework?
Web Server Gateway Interface (WSGI) telah diadopsi sebagai standar untuk
pengembangan aplikasi web Python. WSGI adalah spesifikasi untuk
antarmuka universal antara server web dan aplikasi web
Apa itu Werkzeug?
Kode Jinja2 pada umumnya disisipkan didalam jenis kode lain contohnya HTML.
Dalam Jinja2 pembatas (delimiters) berfungsi untuk tanda bahwa pada kode
tertentu yang relevan berfungsi sebagai pengurai.
03
Environment
Prerequisite
Install Virtual Environment
Prerequisite
Apa itu Virtual Environment?
Virtual Environment merupakan sebuah ruang lingkup virtual yang terisolasi dari
dependencies utama dan sangat berguna ketika aplikasi membutuhkan dependencies
yang berbeda-beda antara satu proyek dengan proyek lainnya pada satu sistem
operasi yang sama.
Install Virtual Environment dan
Flask menggunakan CMD
Install Virtual Environment pada Windows menggunakan CMD :
pip install virtualenv
1. Host
Berfungsi sebagai nama host untuk ditampilkan.
Default yang digunakan adalah 127.0.0.1 (localhost).
Setel ke 0.0.0.0 agar server tersedia secara eksternal
2. Port
Default dengan 5000
3. Debug
Pengaturan defaultnya adalah False(non-aktif). Jika
disetel ke true, akan memberikan informasi debug
dan ketika ada perubahan dalam program web juga
akan langsung berubah ketika direload
4. Options
Untuk diteruskan ke server Werkzeug yang
mendasarinya.
05
Routing
Routing
Routing merupakan suatu modul dalam aplikasi yang
berfungsi untuk mengatur jalannya aplikasi berbasis
web
06
Variable Rules
Variable Rules
Dengan variabel rules memungkinkan membuat sebuah URL yang dinamis!
/python /python/
/flask /flask/
07
URL Building
URL Building
url_for( ) digunakan untuk
membuat URL secara dinamis
dengan fungsi tertentu
http://localhost:5000/admin
http://localhost:5000/guest/budi
08
Templates
Flask menggunakan mesin template Jinja2
{{ . . . }}
Flask akan mencoba menemukan file HTML di folder atau directory bernama
templates
Templates
http://localhost:5000/hello/budi
Templates
Pernyataan If-Else dalam template
{% . . . . %}
Templates
Selain itu, Jinja2 juga dapat digunakan untuk pewarisan template
sehingga mempermudah pengerjaan kode program
{% extends "navbar.html" %}
Tag ini digunakan untuk menyatakan bahwa file
main.html ini memakai file navbar.html sebagai
fondasi dasar atau mewarisi template navbar.html
1 GET Mengirim data dalam bentuk tidak terenkripsi ke server. Metode yang paling
umum.
3 POST Digunakan untuk mengirim data form HTML ke server. Data yang diterima
dengan metode POST tidak di-cache oleh server.
4 PUT Mengganti semua representasi sumber daya target saat ini dengan konten
yang diunggah.
5 DELET Menghapus semua representasi saat ini dari sumber daya target yang
E diberikan oleh URL
HTTP Method
Pertama, buatlah terlebih dahulu file HTML
Output :
Sending data from templates
Lanjutan students.html
Sending data from templates
Hasilnya
10
Static File
Directory
Penerapan
File statis seperti file javascript (.js) atau file
CSS (.css) digunakan pengembang aplikasi
package untuk mendukung tampilan halaman web.
File-file statis ini disimpan dan disajikan dari
Folder folder ‘static’ dalam package.
static
**Contoh sederhana penggunaan static files **
File static
Output URL (‘/’) Output button “Say Hello”
11
Cookies
Set Cookies
Get Cookies
Apa itu Cookies?
⇒ Cookies adalah file teks yang disimpan di dalam mesin klien.
⇒ Tujuannya : Untuk mengingat dan melacak data aktivitas klien, seperti riwayat pengalaman situs
pengguna. Informasi tersebut akan digunakan untuk meningkatkan pengalaman situs
pengguna secara keseluruhan.
Pada Flask, cookie diatur pada objek respons atau on the response object. Dimana server
mengirimkan Cookie kepada pengguna berdasarkan response.
Fungsi make_response( ) untuk mendapatkan objek respons dari nilai kembalian fungsi tampilan.
Setelah itu, gunakan fungsi set_cookie( ) dari objek respons untuk menyimpan cookie.
Metode get( ) dari atribut request.cookies yang digunakan untuk membaca cookie.
cookies.py
from flask import Flask, render_template, request,
make_response Contoh sederhana
app = Flask(__name__) penggunaan cookies
@app.route("/")
def index():
return render_template("indexcookie.html")
#set cookie
@app.route('/setcookie', methods=['POST', 'GET'])
def setcookie(): ⇒ Fungsi setcookie( )
if request.method == 'POST': menetapkan UserID dan
user = request.form['nm']
resp = make_response(render_template('readcookie.html')) akan merender ke halaman
resp.set_cookie('userID', user) lain yaitu ‘readcookie.html’
return resp
#get cookie
@app.route('/getcookie')
def getcookie():
name = request.cookies.get('userID')
return '<h1>welcome ' + name + '</h1>'
if __name__ == '__main__':
app.run(debug = True)
⇒ 'readcookie.html' berisi hyperlink ke fungsi
tampilan lain getcookie( ), yang membaca
kembali dan menampilkan nilai cookie di
browser.
12
Session
Jenis Session
Session adalah interval waktu ketika klien masuk ke server dan keluar dari server.
Data, yang diperlukan untuk disimpan di sesi ini, disimpan di browser klien.
Setiap klien pada session diberikan session ID. Data session disimpan di atas
cookie dan server menandatanganinya secara kriptografis. Untuk enkripsi ini,
aplikasi Flask membutuhkan SECRET_KEY yang ditentukan.
Pastikan untuk set secret_key pada program dan import library session
session.py
Untuk mengontrol session dalam jangka waktu tertentu, berikut jenis dari
session
Nama dari session cookie
SESSION_COOKIE_NAME
tersimpan
14
SQLite
Create Database
View
SQLite adalah sistem database relasional yang menggunakan bahasa query
SQL untuk berinteraksi dengan database. Dimana setiap database memiliki
tabel dan setiap tabel memiliki record.
Membuat database SQLite bernama
'database.db'
1. Halaman Utama
lanjutan
output:
2. Submit Form URL (‘/enternew’) sqlite.py
output:
3. Add Record
URL (‘/addrec’)
sqlite.py
output:
4. List Items
<br>
<a href = "/">Go back to home page</a>
</body>
</html>