Kerangka kerja antarmuka administratif yang cepat, indah, dan dapat diperluas untuk aplikasi Starlette & FastApi
FastAPI telah muncul sebagai kerangka web populer untuk membangun API dengan Python. Namun, ia tidak memiliki solusi antarmuka admin yang matang seperti Flask-Admin untuk mengelola data Anda dengan cepat melalui antarmuka yang ramah pengguna. Meskipun ada solusi seperti Sqladmin dan Fastapi-Admin, solusi tersebut hanya berfungsi dengan ORM tertentu seperti SQLAlchemy dan Tortoise ORM.
Starlette-admin lahir dari kebutuhan akan antarmuka admin FastAPI yang bekerja dengan berbagai lapisan data. Hal ini bertujuan untuk memberikan solusi lengkap untuk antarmuka CRUD terlepas dari backend database. Starlette-admin bekerja dengan baik dengan beberapa ORM/ODM dan juga dapat digunakan dengan lapisan data khusus.
$ pip install starlette-admin
$ poetry add starlette-admin
Ini adalah contoh sederhana dengan model SQLAlchemy
from sqlalchemy import create_engine
from sqlalchemy . ext . declarative import declarative_base
from sqlalchemy . orm import Mapped , mapped_column
from starlette . applications import Starlette
from starlette_admin . contrib . sqla import Admin , ModelView
Base = declarative_base ()
engine = create_engine ( "sqlite:///test.db" , connect_args = { "check_same_thread" : False })
# Define your model
class Post ( Base ):
__tablename__ = "posts"
id : Mapped [ int ] = mapped_column ( primary_key = True )
title : Mapped [ str ]
Base . metadata . create_all ( engine )
app = Starlette () # FastAPI()
# Create admin
admin = Admin ( engine , title = "Example: SQLAlchemy" )
# Add view
admin . add_view ( ModelView ( Post ))
# Mount admin to your app
admin . mount_to ( app )
Akses antarmuka admin Anda di browser Anda di http://localhost:8000/admin
starlette-admin dibangun dengan proyek sumber terbuka lainnya:
Kontribusi dipersilakan dan sangat dihargai! Sebelum memulai, harap baca pedoman kontribusi kami