ORM Python dengan peewee

ORM( Object Relational Mapper) sebuah library yang dapat mengotomatisasikan sebuah database dengan hanya membuat sebuah class.
Kemudian Orm membuat proses sql create sehingga proses membuat penyompanan data semakin mudah.
Akan tetapi proses ini akan mengurangi kecepatan, jadi orm tidak disarankan untuk mereka yang membuat sistem yang mengandalkan kecepatan mending belajar menggunakan relational database yang tradisional.
Peewee orm merupakan salah satu library orm untuk python.
Salah satu keunggulan peewee orm ini terletak pada kesederhanaan dan mudahnya untuk dikostumisasi mungkin masih bisa untuk dioptimasi supaya bisa lebih cepet lagi.
Baiklah supaya ngga terlalu bertele-tele langsung aja kita buat base classnya untuk penamaan saya kembalikan kepadamu mau diberi nama apa aja bebaslah pokoknya.
Untuk menginstall pw kita menggunakan pip.

pip install peewee

BaseModel.py

from peewee import MySQLDatabase
from peewee import Model

class BaseModel(Model):
    class Meta:
        database=get_db()

def get_db():
    return MySQLDatabase("dbku", host='localhost', user='aku', password='passwordku')

Untuk host bisa dimasukkan ip yang menjadi alamat host berada atau memasukan url yang dipake sebagai database.
Kita mendefinisikan BaseModel sebagai kelas yang merupakan turunan dari kelas Model. Didalamnya kita mendefinisikan kelas Meta yang berisikan pendefinisian databse yang di isi dengan informasi mengenai database tersebut. Sekarang kita membuat kelas model database kita. DataKu.py

from database.basemodel import BaseModel
import peewee

class DataKu(BaseModel):
    id=peewee.PrimaryKeyField(null=False)
    text=peewee.TextField()

    class Meta:
        db_table='dataku'
        order_by=('teks',)
#mendefinisikan insert function
def add_data(teks):
    row=DataKu(text=teks)
    row.save()
#mendifinisikan cek database
def cek_db():
    query= DataKu.select().where(DataKu.id==1)
    if query.exists():
       return True
    else:
       return False

def get_text(teks):
    return DataKu.get(DataKu.text==teks).text

main.py

#!/usr/bin/env python3

from database.BaseModel import get_db
from database.DataKu import *

def main():
    get_db().connect()
    DataKu.create_table()
    add_data("aku nyari duit.")
    if cek_db():
       data=get_text('aku nyari duit.')
       print(data)

if __name__ == '__main__':
    main()