一个简化sanic守护进程开发的框架。
os-sanic的Python项目详细描述
#萨尼奇公司[构建状态](https://www.travis-ci.org/cfhamlet/os-sanic.svg?branch=master)(https://www.travis-ci.org/cfhamlet/os sanic)
[![codecov](https://codecov.io/gh/cfhamlet/os sanic/branch/master/graph/badge.svg)(https://codecov.io/gh/cfhamlet/os sanic)
[![pypi-python版本](https://img.shields.io/pypi/pyversions/os sanic.svg)(https://pypi.python.org/pypi/os sanic)
[![pypi](https://img.shields.io/pypi/v/os sanic.svg)(https://pypi.python.org/pypi/os sanic)
r/>用法
*创建项目
通常,项目包含管理脚本、配置文件和一组可重用的应用程序。
```
os sanic startproject project——使用app example
```
此命令将在当前目录中创建一个新项目,其中包含一个示例app,其结构如下:
```
project/
——apps
——init/>鬓——示例
ig.py
——manager.py
````
*create app
app设计为可重用单元。每个应用程序都可能有一些插件,用于加载/转储数据,在服务器启动/关闭时管理数据库连接。它应该有处理http/https/websocket请求的处理程序。路由(uri到处理程序)是必需的。此外,[提供静态文件](https://sanic.readthedocs.io/en/latest/sanic/static_files.html)也很有用。您可以查看"example"应用程序以了解更多详细信息。
`````
python manage.py startproject first
````
这个命令将在apps目录中创建一个名为"first"的应用程序。您应该手动将应用程序包字符串添加到"config.py"中的"installed_apps"中以启用它。
*创建具有完整功能的应用程序
sanic framework产品[中间件](https://sanic.readthedocs.io/en/latest/sanic/middleware.html)和[异常](https://sanic.readthedocs.io/en/latest/sanic/exceptions.html),它们都可以使用。下面的命令将创建一个带有中间件和错误处理程序的应用程序。
````
python manage.py startapp second--full feature
````
8.12)。他们将影响整个项目。[发布](https://github.com/great success/sanic/issues/37)
*显示项目信息
`````
python manage.py info
`````
*启动服务器``启动服务器。使用`--help``种子更多命令行选项。
\config
*服务器配置
>默认配置文件为``config.py``,这里定义的参数用于服务器范围,可以从``sanic``实例的``config``成员访问,[更多详细信息](https://sanic.readthedocs.io/en/latest/sanic/config.html)。
*安装应用程序
写的如下:
```
已安装的应用程序=[
{
‘名称’:‘示例’,
‘包’:‘应用程序.示例’,
‘URL前缀’:‘示例’,
}
]
````
-``名称`:如果未设置,则应用程序名称将使用``pack``年龄``的最后一个片段
-`` package``:应用程序的包
-``url前缀``(别名`prefix````):将此作为应用程序的视图前缀,否则使用app name
-``config``:应用程序的配置文件,与``app.py``文件相同,但将包含在``app.py``中定义的参数。
*应用程序定义
app在"app.py"中定义。``扩展名````路由``和``静态``是主要的组件,
-``扩展名``用作插件机制。可用于加载/转储数据,在服务器启动/关闭时管理数据库连接。``名称``和``扩展类``是必需的,其他参数将传递给扩展实例的配置。
```
扩展名=[
{
‘名称’:'示例',
‘扩展类’:'.extension.example',
‘key1、'value1'、
}
]
```
-``routes``用于指定不同uri的处理程序。可以使用路由定义的所有[内置参数](https://sanic.readthedocs.io/en/latest/sanic/routing.html)。
````
routes=[
('/e1','.handler.exampleview'),
('/e2','.handler.handle'post',['post']),
('/e3','.handler.handle'websocket','websocket',none,true)
]
``````
可以传递自定义参数的更详细的样式:
```
routes=[
{
'uri':'/',
'handler':'.view.exampleview',
'costom-key':'custom-value',
}
]
```
-``statics``用于[提供静态文件](https://sanic.readthedocs.io/en/latest/sanic/static_files.html)。``文件或目录``可以是基于应用程序运行时配置路径的绝对或相对路径。
````
statics=[
{
‘uri’:'/static',
‘文件或目录’:',
}
]
````
api
*处理程序
实例。"routes"中定义的参数将附加到配置对象。如果使用"httpmethodview",则可以从视图类访问配置。
```
r/>``
*扩展类
e附加到这个配置对象
-``application`:当前的应用程序对象,可以用来访问所有的项目应用程序
-``logger`,内置的logger对象
框架调用的扩展类有两个有用的方法:``setup``,``cleanup``。它们都可以是同步或异步的。
-``setup`:在服务器启动之前调用
-``cleanup``:在服务器停止之后调用,如果在``extensions``中配置了多个扩展,那么cleanup方法的执行顺序将从最后一个扩展到第一个
*应用程序对象
应用程序对象表示每个单独的应用程序
-它是扩展实例的成员:
````
)用法:
def setup(self):
self.application
…
````
-可以在sanic的视图类中访问它。视图导入httpmethodview
class exampleView(httpmethodview)用法:
def get(self,request):
self.application
…
`````
-您可以通过以下方法获取扩展实例:
``````
```````
获取其他应用程序的扩展名
```
应用程序。获取扩展名('app_name/extension_name')
`````
-获取应用程序相关的日志记录程序
``````
应用程序。获取日志记录程序('logger_name')
```
-获取sanic实例(它是同一个对象"request.app"在视图中)
````
application.sanic
````
[![codecov](https://codecov.io/gh/cfhamlet/os sanic/branch/master/graph/badge.svg)(https://codecov.io/gh/cfhamlet/os sanic)
[![pypi-python版本](https://img.shields.io/pypi/pyversions/os sanic.svg)(https://pypi.python.org/pypi/os sanic)
[![pypi](https://img.shields.io/pypi/v/os sanic.svg)(https://pypi.python.org/pypi/os sanic)
r/>用法
*创建项目
通常,项目包含管理脚本、配置文件和一组可重用的应用程序。
```
os sanic startproject project——使用app example
```
此命令将在当前目录中创建一个新项目,其中包含一个示例app,其结构如下:
```
project/
——apps
——init/>鬓——示例
ig.py
——manager.py
````
*create app
app设计为可重用单元。每个应用程序都可能有一些插件,用于加载/转储数据,在服务器启动/关闭时管理数据库连接。它应该有处理http/https/websocket请求的处理程序。路由(uri到处理程序)是必需的。此外,[提供静态文件](https://sanic.readthedocs.io/en/latest/sanic/static_files.html)也很有用。您可以查看"example"应用程序以了解更多详细信息。
`````
python manage.py startproject first
````
这个命令将在apps目录中创建一个名为"first"的应用程序。您应该手动将应用程序包字符串添加到"config.py"中的"installed_apps"中以启用它。
*创建具有完整功能的应用程序
sanic framework产品[中间件](https://sanic.readthedocs.io/en/latest/sanic/middleware.html)和[异常](https://sanic.readthedocs.io/en/latest/sanic/exceptions.html),它们都可以使用。下面的命令将创建一个带有中间件和错误处理程序的应用程序。
````
python manage.py startapp second--full feature
````
8.12)。他们将影响整个项目。[发布](https://github.com/great success/sanic/issues/37)
*显示项目信息
`````
python manage.py info
`````
*启动服务器``启动服务器。使用`--help``种子更多命令行选项。
\config
*服务器配置
>默认配置文件为``config.py``,这里定义的参数用于服务器范围,可以从``sanic``实例的``config``成员访问,[更多详细信息](https://sanic.readthedocs.io/en/latest/sanic/config.html)。
*安装应用程序
写的如下:
```
已安装的应用程序=[
{
‘名称’:‘示例’,
‘包’:‘应用程序.示例’,
‘URL前缀’:‘示例’,
}
]
````
-``名称`:如果未设置,则应用程序名称将使用``pack``年龄``的最后一个片段
-`` package``:应用程序的包
-``url前缀``(别名`prefix````):将此作为应用程序的视图前缀,否则使用app name
-``config``:应用程序的配置文件,与``app.py``文件相同,但将包含在``app.py``中定义的参数。
*应用程序定义
app在"app.py"中定义。``扩展名````路由``和``静态``是主要的组件,
-``扩展名``用作插件机制。可用于加载/转储数据,在服务器启动/关闭时管理数据库连接。``名称``和``扩展类``是必需的,其他参数将传递给扩展实例的配置。
```
扩展名=[
{
‘名称’:'示例',
‘扩展类’:'.extension.example',
‘key1、'value1'、
}
]
```
-``routes``用于指定不同uri的处理程序。可以使用路由定义的所有[内置参数](https://sanic.readthedocs.io/en/latest/sanic/routing.html)。
````
routes=[
('/e1','.handler.exampleview'),
('/e2','.handler.handle'post',['post']),
('/e3','.handler.handle'websocket','websocket',none,true)
]
``````
可以传递自定义参数的更详细的样式:
```
routes=[
{
'uri':'/',
'handler':'.view.exampleview',
'costom-key':'custom-value',
}
]
```
-``statics``用于[提供静态文件](https://sanic.readthedocs.io/en/latest/sanic/static_files.html)。``文件或目录``可以是基于应用程序运行时配置路径的绝对或相对路径。
````
statics=[
{
‘uri’:'/static',
‘文件或目录’:',
}
]
````
api
*处理程序
实例。"routes"中定义的参数将附加到配置对象。如果使用"httpmethodview",则可以从视图类访问配置。
```
r/>``
*扩展类
e附加到这个配置对象
-``application`:当前的应用程序对象,可以用来访问所有的项目应用程序
-``logger`,内置的logger对象
框架调用的扩展类有两个有用的方法:``setup``,``cleanup``。它们都可以是同步或异步的。
-``setup`:在服务器启动之前调用
-``cleanup``:在服务器停止之后调用,如果在``extensions``中配置了多个扩展,那么cleanup方法的执行顺序将从最后一个扩展到第一个
*应用程序对象
应用程序对象表示每个单独的应用程序
-它是扩展实例的成员:
````
)用法:
def setup(self):
self.application
…
````
-可以在sanic的视图类中访问它。视图导入httpmethodview
class exampleView(httpmethodview)用法:
def get(self,request):
self.application
…
`````
-您可以通过以下方法获取扩展实例:
``````
```````
获取其他应用程序的扩展名
```
应用程序。获取扩展名('app_name/extension_name')
`````
-获取应用程序相关的日志记录程序
``````
应用程序。获取日志记录程序('logger_name')
```
-获取sanic实例(它是同一个对象"request.app"在视图中)
````
application.sanic
````