本文主要是介绍【Sanic框架】第一章:框架搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Python框架搭建前需要做一些准备:python、pycharm、mysql、redis,这些都是前期或者后期用的到的东西。至于怎么准备,百度上有大量的经验来学习,这里就不做陈述了。
创建app
所有准备工作做完后就可以开始了,首先在pycharm上创建新项目,至于目录你们自己定义,下面虚拟环境一定要创建,最好不要用python全局的环境来写代码。
创建好之后,首先打开项目自带的命令行工具(terminal),或者cmd命令进入项目的虚拟环境中,运行命令:
pip install sanic # 下载sanic 注意:sanic框架只支持python3.5以上的版本
pip freeze > requirements.txt #把下载的相应包放到版本管理文件中
然后你就能看到项目中多了个requirement.txt文件,以后项目转移的时候就能用到。
包下载好了,就下来就开始写app.py文件了,首先写一个hello world:
from sanic import Sanic
from sanic.response import jsonapp = Sanic()@app.route("/")
async def test(request):return json({"hello": "world"})if __name__ == "__main__":app.run(host="127.0.0.1", port=8000)
运行这个文件:python3 app.py
打开浏览器127.0.0.1:8000就能看到hello world了
创建项目目录
当然,有这些显然还不够,对于一个大型项目来说,只靠代码是明显不行的。先搭建好各个需要用到的目录:
│ app.py 项目主文件
│ readme.txt 自述文件
│ requirements.txt 版本库管理工具
├─route 路由
│ │ __init__.py
│ └─api_v1
├─static 静态文件
│ ├─apidoc 接口文档
│ └─log 日志
├─until 公共文件
│ ├─base 连接池文件
│ │ mysql.py
│ │ redis.py
│ └─config 配置文件
│ settings.py
└─venv 虚拟环境
蓝图
对于任何一个项目来说,路由不可能写在app文件中,主文件只需要写一些启动配置项就够了,那路由应该写到哪里去呢?
这里就用到了蓝图(blueprint)
先解释下蓝图:蓝图就是把项目划分为模块,也就是路由分块每个功能的路由单独存放一个文件,方便后期维护阅读,让程序更加松耦合,更加灵活,增加复用性,提高查错效率,降低出错概率。(百度有更具体的解释)
那么要怎么用呢,上面目录中有route目录就是我们存放划分后的路由的,api_v1文件夹是放各个模块的功能,__init__就相当于汇总了,
现在__init__.py文件中引入我们需要的模块blueprint,在api_v1文件夹中新建一个hello.py文件
from sanic import Blueprintapi = Blueprint('api_v1', __name__) #注意,变量名一定不要和文件夹名重复
from .api_v1 import hello
打开hello.py文件
from routes import api
from sanic.response import json@api.route('/hello')
def select(request):return json({'res': 1})
写完之后还不算完成,需要在app.py文件中添加配置
from sanic import Sanic
from routes import api #这里先导入app = Sanic(__name__)if __name__ == "__main__":app.blueprint(api,url_prefix='/blog') #添加api的引用,这里有很多参数,可以去网上查询他的用法app.run(host="127.0.0.1", port=8000)
一个简单的路由就完成了。然后去请求一下
这篇关于【Sanic框架】第一章:框架搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!