vo.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. # -*- coding: utf-8 -*-
  2. # @Author : YY
  3. from typing import List, Optional
  4. from pydantic import BaseModel
  5. from ruoyi_common.base.model import general_response_serial_config
  6. class RouterMetaVo(BaseModel):
  7. # 标题
  8. title: Optional[str] = None
  9. # 图标
  10. icon: Optional[str] = None
  11. # 缓存(true为缓存)
  12. no_cache: Optional[bool] = None
  13. # 内链地址(http(s)://开头)
  14. link: Optional[str] = None
  15. class RouterVo(BaseModel):
  16. model_config = general_response_serial_config.copy()
  17. # 路由名称
  18. name: Optional[str] = None
  19. # 路由地址
  20. path: Optional[str] = None
  21. # 组件地址
  22. component: Optional[str] = None
  23. # 是否隐藏路由(0显示 1隐藏)
  24. hidden: Optional[str] = None
  25. # 重定向地址
  26. redirect: Optional[str] = None
  27. # 路由参数:如 {"id": 1, "name": "ry"}
  28. query: Optional[str] = None
  29. # 菜单排序
  30. sort: Optional[int] = None
  31. # 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面
  32. always_show: Optional[bool] = None
  33. # 其他元素
  34. meta: Optional[RouterMetaVo] = None
  35. # 子路由
  36. children: List["RouterVo"] = []