starlette admin
0.14.1
適用於 Starlette 和 FastApi 應用程式的快速、美觀且可擴展的管理介面框架
FastAPI 已成為以 Python 建立 API 的流行 Web 框架。然而,它缺乏像 Flask-Admin 這樣成熟的管理介面解決方案來透過用戶友好的介面快速管理資料。儘管存在 Sqladmin 和 Fastapi-Admin 等解決方案,但它們僅適用於特定的 ORM,例如 SQLAlchemy 和 Tortoise ORM。
Starlette-admin 的誕生源自於對可與各種資料層配合使用的 FastAPI 管理介面的需求。它旨在為 CRUD 介面提供完整的解決方案,無論資料庫後端如何。 Starlette-admin 開箱即用,可與多個 ORM/ODM 一起使用,也可以與自訂資料層一起使用。
$ pip install starlette-admin
$ poetry add starlette-admin
這是一個使用 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 )
在瀏覽器中存取您的管理介面:http://localhost:8000/admin
starlette-admin是與其他開源專案一起建構的:
歡迎並高度讚賞您的貢獻!在開始之前,請閱讀我們的貢獻指南