File tree Expand file tree Collapse file tree 1 file changed +9
-3
lines changed
Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -84,7 +84,7 @@ export CUSTOM_CONFIG='config in environment variables'
8484那最终 NoneBot 所读取的内容为环境变量中的内容,即 ` config in environment variables ` 。
8585
8686:::caution 注意
87- NoneBot 不会自发读取未被定义的配置项的环境变量,如果需要读取某一环境变量需要在 dotenv 配置文件中进行声明 。
87+ 如果一个环境变量既不是 NoneBot的 ** [ 内置配置项 ] ( #内置配置项 ) ** ,也不是任何插件所定义的 ** [ 插件配置 ] ( #插件配置 ) ** ,那么 NoneBot 不会自发读取该环境变量,需要在 dotenv 配置文件中先行声明 。
8888:::
8989
9090### dotenv 配置文件
@@ -242,11 +242,17 @@ weather = on_command(
242242
243243这种方式可以简洁、高效地读取配置项,同时也可以设置默认值或者在运行时对配置项进行合法性检查,防止由于配置项导致的插件出错等情况出现。
244244
245- :::tip 提示
245+ :::tip 可配置的事件响应优先级
246246发布插件应该为自身的事件响应器提供可配置的优先级,以便插件使用者可以自定义多个插件间的响应顺序。
247247:::
248248
249- 由于插件配置项是从全局配置中读取的,通常我们需要在配置项名称前面添加前缀名,以防止配置项冲突。例如在上方的示例中,我们就添加了配置项前缀 ` weather_ ` 。但是这样会导致在使用配置项时过长的变量名,因此我们可以使用 ` pydantic ` 的 ` alias ` 或者通过配置 scope 来简化配置项名称。这里我们以 scope 配置为例:
249+ :::tip ` get_plugin_config ` 的配置获取逻辑
250+ 无论是否在 dotenv 文件中声明,插件配置模型中定义的配置项都遵循** [ 配置项的加载] ( #配置项的加载 ) ** 中的优先级顺序进行读取。
251+ :::
252+
253+ ### 配置 scope
254+
255+ 由于插件配置项是从全局配置和环境变量中读取的,通常我们需要在配置项名称前面添加前缀名,以防止配置项冲突。例如在上方的示例中,我们就添加了配置项前缀 ` weather_ ` 。但是这样会导致在使用配置项时过长的变量名,因此我们可以使用 ` pydantic ` 的 ` alias ` 或者通过配置 scope 来简化配置项名称。这里我们以 scope 配置为例:
250256
251257``` python title=weather/config.py
252258from pydantic import BaseModel
You can’t perform that action at this time.
0 commit comments