Lenovo IdeaPad Slim 3 14ABR8 AMD Ryzen 5Lenovo IdeaPad Slim 3 14ABR8 82XL0004ID - ABYSS BLUE = LENOVO SLIM 3 82XL007CID R5-7530U/8GB/512GB/14.0/WIN11+OHS/ABYSS BLUE, Lenovo IdeaPad Slim 3 14ABR8 82XL0005ID - ARCTIC GREY = LENOVO SLIM 3 82XL007BID R5-7530U/8GB/512GB/14.0/WIN11+OHS/ARCTIC GREY Free Klik Disini ! |
Flask adalah framework web Python yang populer dan mudah digunakan.
Salah satu fitur yang berguna dari Flask adalah kemampuannya untuk bekerja dengan database.
Dalam postingan blog ini, kita akan membahas cara membuat dan mengelola data one to many di Flask.
Relasi one to many adalah jenis relasi antara dua tabel di database di mana satu baris dalam tabel pertama dapat memiliki banyak baris terkait dalam tabel kedua, tetapi satu baris dalam tabel kedua hanya dapat terkait dengan satu baris dalam tabel pertama.
Misalnya, dalam database sekolah, satu guru dapat mengajar banyak siswa, tetapi setiap siswa hanya memiliki satu guru.
Untuk membuat model data one to many di Flask, kita dapat menggunakan library SQLAlchemy.
SQLAlchemy adalah library Object-Relational Mapping (ORM) yang memungkinkan kita untuk bekerja dengan database menggunakan objek Python.
Berikut adalah langkah-langkah untuk membuat model data one to many di Flask:
Misalnya, kita ingin membuat model data one to many untuk guru dan siswa.
Kita dapat membuat dua kelas model, yaitu Guru
dan Siswa
.
Kelas Guru
memiliki atribut id
dan nama
, sedangkan kelas Siswa
memiliki atribut id
, nama
, dan guru_id
.
Atribut guru_id
di kelas Siswa
adalah kunci asing yang merujuk ke id
di kelas Guru
.
from flask import Flask
from sqlalchemy import Column, Integer, String, ForeignKey
from sqlalchemy.ext.declarative import declarative_baseBase = declarative_base()
class Guru(Base):
__tablename__ = 'guru'
id = Column(Integer, primary_key=True)
nama = Column(String(50))class Siswa(Base):
__tablename__ = 'siswa'
id = Column(Integer, primary_key=True)
nama = Column(String(50))
guru_id = Column(ForeignKey('guru.id'))db = SQLAlchemy(app)
db.create_all()
Dalam contoh di atas, kita telah mendefinisikan dua kelas model, Guru
dan Siswa
.
Kita juga telah menentukan relasi one to many antara kedua kelas model dengan menggunakan atribut guru_id
di kelas Siswa
.
Setelah kita membuat model data, kita dapat menggunakannya untuk menyimpan dan mengambil data dari database.
Misalnya, kita dapat menambahkan guru baru ke database dengan menggunakan kode berikut:
# Tambahkan guru baru ke database
guru = Guru(nama='Pak Budi')
db.session.add(guru)
db.session.commit()
Kita juga dapat mengambil semua siswa yang diajar oleh guru tertentu dengan menggunakan kode berikut:
# Ambil semua siswa yang diajar oleh Pak Budi
guru = db.session.query(Guru).filter_by(nama='Pak Budi').first()
siswa = guru.siswafor siswa in siswa:
print(siswa.nama)
Flask-Admin adalah ekstensi Flask yang memungkinkan kita untuk membuat antarmuka pengguna untuk mengelola data di database.
Flask-Admin dapat digunakan untuk membuat formulir untuk menambahkan, mengedit, dan menghapus data, serta tabel untuk menampilkan data.
Untuk menggunakan Flask-Admin untuk mengelola data one to many, kita perlu menginstal Flask-Admin dan menambahkannya ke aplikasi Flask.
Kemudian, kita perlu mendefinisikan model data dan menambahkannya ke Flask-Admin.
Berikut adalah langkah-langkah untuk menggunakan Flask-Admin untuk mengelola data one to many:
Contoh
Berikut adalah contoh cara menggunakan Flask-Admin untuk mengelola data one to many:
from flask import Flask
from flask_admin import Admin
from sqlalchemy import Column, Integer, String, ForeignKey
from sqlalchemy.ext.declarative import declarative_baseBase = declarative_base()
class Guru(Base):
__tablename__ = 'guru'
id = Column(Integer, primary_key=True)
nama = Column(String(50))class Siswa(Base):
__tablename__ = 'siswa'
id = Column(Integer, primary_key=True)
nama = Column(String(50))
guru_id = Column(ForeignKey('guru.id'))db = SQLAlchemy(app)
admin = Admin(app)
admin.add_view(ModelView(Guru, db.session))
admin.add_view(ModelView(Siswa, db.session))
app.run()
Dalam contoh di atas, kita telah menginstal Flask-Admin dan menambahkannya ke aplikasi Flask.
Kita juga telah mendefinisikan model data dan menambahkannya ke Flask-Admin.
Sekarang, kita dapat mengakses antarmuka pengguna Flask-Admin untuk mengelola data guru dan siswa.
Membuat dan mengelola data one to many di Flask adalah tugas yang mudah dengan menggunakan library SQLAlchemy dan Flask-Admin.
Dengan menggunakan tools ini, kita dapat dengan cepat dan mudah membuat aplikasi web yang dapat menyimpan dan mengambil data dari database.