zoukankan      html  css  js  c++  java
  • Sanic十:Sanic蓝图

    在进行开发的时候,可能会有很多个模块,比如用户模块、商品模块,这些个模块互相之间不依赖,各自有各自的一些配置、属性、静态资源,这种情况就可以使用蓝图,即每一个模块都可以用蓝图声明路由app,然后把每个蓝图视为主app的子app来注册,这样就能实现分模块单独管理,模块之间的资源和配置互不影响

    一、声明蓝图需使用sanic.Blueprint,使用示例

    使用蓝图

    引入并注蓝图并把蓝图注册到主app上

    二、蓝图支持指定的参数

    由源码可见,Blueprint和Sanic一样,都是继承的BaseSanic,所以使用方式其实是一样的,但又有各自支持的参数

    name: str 蓝图名,不重复即可,默认为None
    url_prefix: str url前缀对此蓝图下所有路由有效,默认为None
    host: str sanic服务器要使用的FQDN的IP地址,默认为None
    version: [int, str, float] 蓝图版本号,默认为None
    strict_slashes: Optional[bool] = None,
    version_prefix: str 版本前缀,默认为 /v

    三、蓝图嵌套,Blueprint.group方法

    当使用蓝图对工程进行分类管理过后,可能还需要对分类过后的每一个类进行细分,这个时候就可使用Blueprint.group方法来注册到一个主蓝图上

    用户管理,登录注册模块

    用户管理,用户信息模块

    把两个子路由注册到同一个主蓝图中

    把主蓝图注册到app上

    官方案例:

    讨论群:249728408
  • 相关阅读:
    linux修改键盘按键
    linux添加一个已经存在用户到一个用户组
    centos-6更新yum源(163)
    Fedora 19安装以后的优化
    centos永久性修改系统时间显示格式
    smb.conf文件详解
    Centos上部署文件共享
    centos上mysql开启远程访问
    centos安装mysql后默认密码修改
    centos上mysql的一种安装方式
  • 原文地址:https://www.cnblogs.com/zhongyehai/p/15110710.html
Copyright © 2011-2022 走看看