Quack Quack:一个简单的应用程序框架
项目描述
概述
该项目旨在解决配置应用程序的问题,该应用程序需要具有初始化步骤(例如:用于收集设置或建立连接)并使用 Python 样式代码(上下文管理器和装饰器)来获取这些数据。
例如,通常您需要在 celery 应用程序和 Web 应用程序中使用两种独立的设置机制,因为您不应该在 celery 应用程序中使用 Web 应用程序启动过程。这个包为这个问题提供了一个解决方案,通过提供一个简单且独立于其他框架的机制来在任何地方实现。
快速使用示例
要使用 Quack Quack,您需要创建应用程序类(从 qq.Application继承),您需要在其中添加插件。配置后,您需要“启动”应用程序。之后,您可以将配置器用作上下文管理器。
from qq import Application, Context, InjectApplication, SimpleInjector
from qq.plugins import SettingsPlugin
from qq.plugins.types import Settings
class MyApplication(Application):
def create_plugins(self):
self.plugins["settings"] = SettingsPlugin('settings')
application = MyApplication()
application.start('application')
with Context(application) as ctx:
print(ctx["settings"])
@InjectApplication(application)
def samplefun(settings: Settings = SimpleInjector("settings")):
print(settings)
上例中的context.settings是由 SettingsPlugin 生成的变量。如果您想了解更多,请前往教程
安装
pip install quackquack
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
quackquack-1.1.1.tar.gz
(23.9 kB
查看哈希)
内置分布
quackquack-1.1.1-py3-none-any.whl
(39.6 kB
查看哈希)
关
quackquack -1.1.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | eb4ddc2d9550da3adaba06551bc696f6397291c4699718dd14ede12caaf49c56 |
|
MD5 | d07dc9b97fc43c308199511d085e70e8 |
|
布莱克2-256 | fcdc52dfaf7bf5aef1d09f260c79930c19df8e7ec9f80d09d64df15090673be3 |
关
quackquack -1.1.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6cf1a3eb2689b9f38ea8f637298f9226e0dc40eea63d68f0c3bb60d685529d6f |
|
MD5 | dae190b1e6fc547a939d8d53dd95b5b1 |
|
布莱克2-256 | bf8d390ff6f171d3c7e45e85fbc5c0b442600e6492f59919ad8e9e58d446f9f3 |