You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
16 lines
441 B
16 lines
441 B
from typing import Optional
|
|
|
|
from app.core.crud import CRUDBase
|
|
from app.models.admin import Menu
|
|
from app.schemas.menus import MenuCreate, MenuUpdate
|
|
|
|
|
|
class MenuController(CRUDBase[Menu, MenuCreate, MenuUpdate]):
|
|
def __init__(self):
|
|
super().__init__(model=Menu)
|
|
|
|
async def get_by_menu_path(self, path: str) -> Optional["Menu"]:
|
|
return await self.model.filter(path=path).first()
|
|
|
|
|
|
menu_controller = MenuController()
|
|
|