def main(app: t.Optional[FastAPI] = None): from monogusa.web import cli if app is None: app = FastAPI() app.include_router(router) cli.run(app, where=None)
from magicalimport import import_module from fastapi import FastAPI routers = import_module("./routers.py", here=__file__) app = FastAPI() app.include_router(routers.router) if __name__ == "__main__": import monogusa.web.cli as webcli webcli.run(app)
def main(app: FastAPI): from monogusa.web import cli cli.run(app)
name: str def database_url() -> str: return "sqlite:///:memory:" class DB: def __init__(self, url) -> None: self.url = url def save(self, message: str) -> None: print(f"save {message} in {self.url}") def db(database_url=Depends(database_url)) -> DB: return DB(database_url) @app.post("/hello", response_model=web.CommandOutput) def hello(input: HelloInput, db: DB = Depends(db)) -> t.Dict[str, t.Any]: with web.handle() as s: db.save("hello message") return s.dict() if __name__ == "__main__": from monogusa.web import cli cli.run(app)
from routes import router from fastapi import FastAPI app = FastAPI() app.include_router(router) if __name__ == "__main__": from monogusa.web.cli import run run(app)