Belajar Python, Belajar Flask

Yang saya pasang

  • python versi 3.6.6
  • virtualenv ( https://www.youtube.com/watch?v=N5vscPTWKOk )

Flask

Di websitenya ditulis flask merupakan micro framework, dan setelah saya coba karena micro emang sangat minimalis sekali, untuk bikin satu alur sederhana cukup dengan satu file saja. Tapi karena sangat sederhana cukup banyak variasinya, nah tulisan ini hanya “curhatan” saat saya belajar flask.

Memasang Flask

Untuk memasangnya saya gunakan perintah berikut

pip install flask

Landing File

Apa ya istilahnya? Saya sendiri menyebutnya “landing file” karena berkas ini yang akan dieksekusi oleh python untuk menjalankan flask. Seperti pada umumnya buat dulu “hello world”.

Saya buat dalam folder saya file dengan nama `app.py`

jangan beri nama berkas kalian flask.py

from flask import Flask
app = Flask(__name__)

@app.route('/')
def landing():
    return 'hello world'

Menjalankan “landing file”

Untuk menjalankan si “hello world” ini kita perlu mendaftarkan ke dalam “environment variable”, di linux saya menggunkana perintah berikut. ( semua perintah di lakukan di dalam folder “projek” )

export FLASK_APP=app.py

Lalu kita bisa menjalankan dengan perintah

flask run
// menghasilkan informasi berikut
 * Environment: production
   WARNING: Do not use the development server in a production environment
.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

Saat mengunjungi alamat 127.0.0.1:5000 pada browser akan ditampilkan tulisan “hello world”, sekarang coba ubah tulisan “hello world” di berkas tadi menjadi apa kek terserah, lalu refresh halaman, saya yakin tidak ada perubahan yang terjadi. Kenapa? Karena aplikasi sedang berada di mode production, agar saat belajar mengubah bisa langsung berefek maka gunakan mode development, caranya hampir mirip dengan perintah sebelumnya.
Matikan dulu “server” nya dengan menekan CTRL+C.

 export FLASK_ENV=development

Lalu jalankan kembali dengan perintah yang sama

flask run
// menghasilkan informasi berikut
* Environment: development
 * Debug mode: on
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 288-734-788

Bagi yang mikir ribet harus setup FLASK_ENV ada cara yang lebih mudah, di berkas app.py tambahkan beberapa baris kode

from flask import Flask
app = Flask(__name__)

@app.route('/')
def landing():
    return 'hello world'

if __name__ == '__main__':
    app.run(debug=True)

Untuk penjelasan baris baru silahkan tonton vidio berikut

video: (https://www.youtube.com/watch?v=sugvnHA7ElY)

Dengan perintah tersebut saat hendak menjalankan versi production bisa gunakan perintah

flask run

Tapi jika untuk mode dev bisa gunakan

python app.py

Referensi:

  1. http://flask.pocoo.org/docs/1.0/quickstart/