Skip to content

Commit 4793dd4

Browse files
committed
📝 更新插件配置相关文档
1 parent d3fc5b0 commit 4793dd4

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

website/docs/appendices/config.mdx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff 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
252258
from pydantic import BaseModel

0 commit comments

Comments
 (0)