Nak, Kamu Gapapa, Kan?Pak, Bu, andai kalian tahu, aku hanya ingin didengar. Aku hanya ingin merasakan suasana rumah yang hangat. Aku hanya ingin ada foto keluarga kita terpajang di rumah. Namun, rumah yang seharusnya jadi tempat yang nyaman untuk pulang, malah terasa asing untukku. Buy |
Flask merupakan salah satu framework python yang cukup populer. Flask menerapkan konsep kode yang sederhana sehingga flask sangat cocok untuk membangun sebuah RESTful API. selain itu juga flask bisa digunakan untuk membangun sebuah website
sebelum mengikuti tutorial ini baca terlebih dahulu tutorial sebelumnya .
pertama buatlah struktur project impian sebagai berikut :
setelah membuat struktur project seperti di atas buatlah sebuah table dengan nama user seperti di bawah ini :
--
-- Database: `project_sample`
---- --------------------------------------------------------
--
-- Table structure for table `user`
--CREATE TABLE `user` (
`id` int(11) NOT NULL,
`email` varchar(35) NOT NULL,
`first_name` varchar(35) NOT NULL,
`last_name` varchar(35) NOT NULL,
`password` varchar(150) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;--
-- Indexes for dumped tables
----
-- Indexes for table `user`
--
ALTER TABLE `user`
ADD PRIMARY KEY (`id`);--
-- AUTO_INCREMENT for dumped tables
----
-- AUTO_INCREMENT for table `user`
--
ALTER TABLE `user`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
COMMIT;
step berikutnya paste kode di bawah ini kedalam file config.py
class Config(object):
"""
Common configurations
"""# Put any configurations here that are common across all environments
class DevelopmentConfig(Config):
"""
Development configurations
"""DEBUG = True
SQLALCHEMY_ECHO = Trueclass ProductionConfig(Config):
"""
Production configurations
"""DEBUG = False
app_config = {
'development': DevelopmentConfig,
'production': ProductionConfig
}
step berikutnya, install requirement flask dan configparser dengan pip
pip instal flask, configparser
pada file config.ini buat variable global yang akan kita pakai pada project ini
[codesyntax lang="ini"]
[DEFAULT]
SECRET_KEY = 2454ertr@t4![DB]
DB_HOST = localhost
DB_USER = root
DB_PASS = admin
DB_NAME = sample_project
kemudian konfigurasi koneksi database pada file instance/config.py
import configparser
config_parser = configparser.ConfigParser()
config_parser.read('config.ini')SQLALCHEMY_DATABASE_URI = 'mysql://{0}:{1}@{2}/{3}'.format(
config_parser['DB']['DB_USER'],
config_parser['DB']['DB_PASS'],
config_parser['DB']['DB_HOST'],
config_parser['DB']['DB_NAME']
)
step berikutnya buat sebuah function create_app pada file app/__init__.py
from flask import Flask
import os
import configparserconfig_parser = configparser.ConfigParser()
config_parser.read('config.ini')def create_app(config_name):
app = Flask(__name__, instance_relative_config=True)
app.config.from_pyfile('config.py')
app.config['SECRET_KEY'] = config_parser['DEFAULT']['SECRET_KEY']
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = Falsereturn app
step berikutnya paste kode di bawah ini pada file run.py
import osfrom app import create_app
config_name = os.getenv('FLASK_CONFIG')
app = create_app(config_name)if __name__ == '__main__':
app.run()
sekarang uji coba first project user login bagian pertama kita dengan comand di bawah ini:
export FLASK_APP=run.py
flask run
selamat mencoba, nantikan tutorial selanjutnya Flask CRUD Part 1 - User Login-bag2