📝 update docs

This commit is contained in:
Artin 2020-12-07 21:02:08 +08:00
parent f8d0b691ec
commit 8443c01303
8 changed files with 34 additions and 22 deletions

View File

@ -1,7 +1,7 @@
--- ---
home: true home: true
heroImage: /logo.png heroImage: /logo.png
tagline: An asynchronous QQ bot framework. tagline: An asynchronous bot framework.
actionText: 开始使用 actionText: 开始使用
actionLink: guide/ actionLink: guide/
features: features:

View File

@ -13,19 +13,30 @@
NoneBot 在启动时将会从系统环境变量或者 `.env` 文件中寻找变量 `ENVIRONMENT` (大小写不敏感),默认值为 `prod` NoneBot 在启动时将会从系统环境变量或者 `.env` 文件中寻找变量 `ENVIRONMENT` (大小写不敏感),默认值为 `prod`
这将引导 NoneBot 从系统环境变量或者 `.env.{ENVIRONMENT}` 文件中进一步加载具体配置。 这将引导 NoneBot 从系统环境变量或者 `.env.{ENVIRONMENT}` 文件中进一步加载具体配置。
现在,我们在 `.env` 文件中写入当前环境信息 现在,我们在 `.env` 文件中写入当前环境信息
```bash ```bash
# .env # .env
ENVIRONMENT=dev ENVIRONMENT=dev
``` ```
如你所想,之后 NoneBot 就会从 `.env.dev` 文件中加载环境变量。
## .env.\* 文件 ## .env.\* 文件
详细配置文件,使用 [pydantic](https://pydantic-docs.helpmanual.io/) 加载配置。在 NoneBot 初始化时可以指定忽略 `.env` 中的环境信息转而加载某个配置文件: `nonebot.init(_env_file=".env.dev")` NoneBot 使用 [pydantic](https://pydantic-docs.helpmanual.io/) 进行配置管理,会从 `.env.{ENVIRONMENT}` 文件中获悉环境配置。
可以在 NoneBot 初始化时指定加载某个环境配置文件: `nonebot.init(_env_file=".env.dev")`,这将忽略你在 `.env` 中设置的环境信息。
:::warning 提示 :::warning 提示
由于 `pydantic` 使用 JSON 加载配置项,请确保配置项值为 JSON 能够解析的数据。如果 JSON 解析失败将作为字符串处理。 由于 `pydantic` 使用 JSON 解析配置项,请确保配置项值为 JSON 格式的数据。如:
```bash
list=["123456789", "987654321", 1]
test={"hello": "world"}
```
如果配置项值解析失败将作为字符串处理。
::: :::
示例及说明: 示例及说明:

View File

@ -43,7 +43,7 @@ async def get_weather(city: str):
## [事件响应器](../api/matcher.md) ## [事件响应器](../api/matcher.md)
```python{4} ```python{5}
from nonebot import on_command from nonebot import on_command
from nonebot.rule import to_me from nonebot.rule import to_me
from nonebot.permission import Permission from nonebot.permission import Permission
@ -87,12 +87,11 @@ weather = on_command("天气", rule=to_me(), permission=Permission(), priority=5
事件响应器的优先级代表事件响应器的执行顺序,同一优先级的事件响应器会 **同时执行!**,优先级数字**越小**越先响应!优先级请从 `1` 开始排序! 事件响应器的优先级代表事件响应器的执行顺序,同一优先级的事件响应器会 **同时执行!**,优先级数字**越小**越先响应!优先级请从 `1` 开始排序!
:::tip 提示 :::tip 提示
使用 `nonebot-test` 可以看当前所有事件响应器的执行流程,有助理解事件响应流程! 使用 `nonebot-plugin-test` 可以在网页端查看当前所有事件响应器的执行流程,有助理解事件响应流程!
```bash ```bash
pip install nonebot2[test] nb plugin install nonebot_plugin_test
``` ```
::: :::
### 阻断 block ### 阻断 block

View File

@ -1,10 +1,10 @@
# 创建一个完整的项目 # 创建一个完整的项目
上一章中我们已经运行了一个最小的 NoneBot 实例,在这一章,我们将从零开始一个完整的项目。 上一章中我们已经运行了一个简单的 NoneBot 实例,在这一章,我们将从零开始一个完整的项目。
## 目录结构 ## 目录结构
首先,我们可以使用 `nb-cli` 或者自行创建完整的项目目录: 可以使用 `nb-cli` 或者自行创建完整的项目目录:
```bash ```bash
nb create nb create

View File

@ -1,9 +1,9 @@
# 结语 # 结语
至此,相信你已经能够写出一个基础的插件了,更多的用法将会在 进阶 部分进行介绍,这里给出几个小提示: 至此,相信你已经能够写出一个基础的插件了这里给出几个小提示:
- 请千万注意事件处理器的优先级设定 - 请千万注意事件处理器的优先级设定
- 在匹配规则中请勿使用耗时极长的函数 - 在匹配规则中请勿使用耗时极长的函数
- 同一个用户可以**跨群**(**私聊**)继续他的事件处理(除非做出权限限制,将在后续介绍) - 同一个用户可以**跨群**(**私聊**)继续他的事件处理(除非做出权限限制,将在后续介绍)
如果你还不能满足,前往 [进阶](../advanced/README.md) 获得更多的功能信息。 如果「指南」还不能满足你,前往 [进阶](../advanced/README.md) 查看更多的功能信息。

View File

@ -32,7 +32,8 @@ if __name__ == "__main__":
在上方 `bot.py` 中,这几行高亮代码将依次: 在上方 `bot.py` 中,这几行高亮代码将依次:
1. 使用默认配置初始化 NoneBot 1. 使用默认配置初始化 NoneBot
2. 加载 NoneBot 内置的 CQHTTP 协议适配组件 2. 加载 NoneBot 内置的 CQHTTP 协议适配组件
`register_adapter` 的第一个参数我们传入了一个字符串,该字符串将会在后文 [配置 QQ 协议端](#配置-qq-协议端) 时使用。
3. 加载 NoneBot 内置的插件 3. 加载 NoneBot 内置的插件
4. 在地址 `127.0.0.1:8080` 运行 NoneBot 4. 在地址 `127.0.0.1:8080` 运行 NoneBot
@ -80,7 +81,7 @@ QQ 协议端举例:
```json{2,3,35-36,42} ```json{2,3,35-36,42}
{ {
"uin": 你的QQ号, "uin": "你的QQ号",
"password": "你的密码", "password": "你的密码",
"encrypt_password": false, "encrypt_password": false,
"password_encrypted": "", "password_encrypted": "",
@ -133,7 +134,9 @@ QQ 协议端举例:
} }
``` ```
其中 `ws://127.0.0.1:8080/cqhttp/ws` 中的 `127.0.0.1``8080` 应分别对应 nonebot 配置的 HOST 和 PORT 其中 `ws://127.0.0.1:8080/cqhttp/ws` 中的 `127.0.0.1``8080` 应分别对应 nonebot 配置的 HOST 和 PORT。
`cqhttp` 是前述 `register_adapter` 时传入的第一个参数,代表设置的 `CQHTTPBot` 适配器的路径,你可以对不同的适配器设置不同路径以作区别。
## 历史性的第一次对话 ## 历史性的第一次对话

View File

@ -17,8 +17,8 @@ pip uninstall nonebot
### 通过脚手架安装(推荐安装方式) ### 通过脚手架安装(推荐安装方式)
1. (推荐)使用你喜欢的 Python 环境管理工具(如`poetry`)创建新的虚拟环境。 1. (推荐)使用你喜欢的 Python 环境管理工具(如 `poetry`)创建新的虚拟环境。
2. 使用 `pip` (或其他) 安装 NoneBot 脚手架 2. 使用 `pip` (或其他包管理工具) 安装 nb-clinonebot2 作为其依赖会一起被安装
```bash ```bash
pip install nb-cli pip install nb-cli
@ -33,16 +33,15 @@ pip uninstall nonebot
### 不使用脚手架(纯净安装) ### 不使用脚手架(纯净安装)
```bash ```bash
# 在使用poetry的情况下
poetry add nonebot2
# 在使用pip的情况下
pip install nonebot2 pip install nonebot2
# 也可以通过 poetry 安装
poetry add nonebot2
``` ```
如果你需要使用最新的(可能**尚未发布**的)特性,可以直接从 GitHub 仓库安装: 如果你需要使用最新的(可能**尚未发布**的)特性,可以直接从 GitHub 仓库安装:
:::warning 注意 :::warning 注意
直接从Github仓库中安装意味着你将使用最新提交的代码,它们并没有进行充分的稳定性测试 直接从 Github 仓库中安装意味着你将使用最新提交的代码它们并没有进行充分的稳定性测试
在任何情况下请不要将其应用于生产环境! 在任何情况下请不要将其应用于生产环境!
::: :::

View File

@ -48,7 +48,7 @@ if __name__ == "__main__":
::: :::
:::warning 提示 :::warning 提示
**插件不能存在相同名称!** **不能存在相同名称的插件**
::: :::
:::danger 警告 :::danger 警告