MyGit

aminalaee/sqladmin

Fork: 187 Star: 1874 (更新于 2024-10-19 03:39:45)

license: BSD-3-Clause

Language: Python .

SQLAlchemy Admin for FastAPI and Starlette

最后发布版本: 0.19.0 ( 2024-09-06 15:13:12)

官方网址 GitHub网址

Build Status Publish Status Coverage Package version Supported Python versions


SQLAlchemy Admin for Starlette/FastAPI

SQLAdmin is a flexible Admin interface for SQLAlchemy models.

Main features include:


Documentation: https://aminalaee.dev/sqladmin

Source Code: https://github.com/aminalaee/sqladmin

Online Demo: Demo


Installation

Install using pip:

$ pip install sqladmin

This will install the full version of sqladmin with optional dependencies:

$ pip install "sqladmin[full]"

Screenshots

sqladmin-1 sqladmin-2

Quickstart

Let's define an example SQLAlchemy model:

from sqlalchemy import Column, Integer, String, create_engine
from sqlalchemy.orm import declarative_base


Base = declarative_base()
engine = create_engine(
    "sqlite:///example.db",
    connect_args={"check_same_thread": False},
)


class User(Base):
    __tablename__ = "users"

    id = Column(Integer, primary_key=True)
    name = Column(String)


Base.metadata.create_all(engine)  # Create tables

If you want to use SQLAdmin with FastAPI:

from fastapi import FastAPI
from sqladmin import Admin, ModelView


app = FastAPI()
admin = Admin(app, engine)


class UserAdmin(ModelView, model=User):
    column_list = [User.id, User.name]


admin.add_view(UserAdmin)

Or if you want to use SQLAdmin with Starlette:

from sqladmin import Admin, ModelView
from starlette.applications import Starlette


app = Starlette()
admin = Admin(app, engine)


class UserAdmin(ModelView, model=User):
    column_list = [User.id, User.name]


admin.add_view(UserAdmin)

Now visiting /admin on your browser you can see the SQLAdmin interface.

Related projects and inspirations

  • Flask-Admin Admin interface for Flask supporting different database backends and ORMs. This project has inspired SQLAdmin extensively and most of the features and configurations are implemented the same.
  • FastAPI-Admin Admin interface for FastAPI which works with TortoiseORM.
  • Dashboard Admin interface for ASGI frameworks which works with the orm package.

最近版本更新:(数据更新于 2024-09-18 21:10:09)

2024-09-06 15:13:12 0.19.0

2024-07-01 19:13:28 0.18.0

2024-05-13 18:35:25 0.17.0

2024-02-21 23:16:39 0.16.1

2023-11-14 17:13:13 0.16.0

2023-10-13 02:55:08 0.15.2

2023-10-02 22:14:45 0.15.1

2023-09-19 15:38:43 0.15.0

2023-08-08 17:51:08 0.14.1

2023-08-02 17:46:06 0.14.0

主题(topics):

admin, admin-dashboard, asgi, asyncio, fastapi, python, sqlalchemy, starlette, web, wsgi

aminalaee/sqladmin同语言 Python最近更新仓库

2024-11-05 15:03:24 Cinnamon/kotaemon

2024-11-05 11:00:51 home-assistant/core

2024-11-04 23:11:11 DS4SD/docling

2024-11-04 10:56:18 open-compass/opencompass

2024-11-04 08:51:21 yt-dlp/yt-dlp

2024-11-02 04:45:40 princeton-vl/infinigen