Simplest fastest minimal ASGI CRUD Admin panel for Tortoise ORM models. It's generating fully native async auto zero config one line app
Project description
Femto Admin
Simplest fastest minimal ASGI CRUD Admin panel for Tortoise ORM models
It's generating fully native async auto zero config one line app
Requirements
- Python >= 3.9
INSTALL
pip install femto-admin
Run your app
- Describe your db models with Tortoise ORM in
models.py
module
from tortoise import fields
from tortoise_api import Model
class User(Model):
id: int = fields.IntField(pk=True)
name: str = fields.CharField(255, unique=True, null=False)
posts: fields.ReverseRelation["Post"]
class Post(Model):
id: int = fields.IntField(pk=True)
text: str = fields.CharField(4095)
user: User = fields.ForeignKeyField('models.User', related_name='posts')
_name = 'text' # `_name` sets the attr for displaying related Post instace inside User (default='name')
- Write run script
main.py
: pass your models module in Api app:
from femto_admin import Admin
import models
app = Admin().start(models)
- Set
DB_URL
env variable in.env
file - Run it:
uvicorn main:app
Or you can just fork Completed minimal runnable example from sample apps.
And voila:
You have menu with all your models at root app route: http://127.0.0.1:8000
Made with ❤ on top of the Starlette, TortoiseORM, TortoiseAPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
femto-admin-0.1.0.tar.gz
(518.3 kB
view hashes)
Built Distribution
femto_admin-0.1.0-py3-none-any.whl
(527.0 kB
view hashes)
Close
Hashes for femto_admin-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed249962bb19c438edf79abe047e0109bbd560eda73deea5d4f98486a2e345eb |
|
MD5 | 88e46b616f7c0ed0e7bf83863f86428c |
|
BLAKE2b-256 | 0501005e3aaef127c1a36b047181996929c329ead8c28528726a7863f7b6c6de |