diff --git a/website/docs/advanced/export-and-require.md b/website/docs/advanced/export-and-require.md index c1e7358e..e03de109 100644 --- a/website/docs/advanced/export-and-require.md +++ b/website/docs/advanced/export-and-require.md @@ -7,12 +7,14 @@ options: # 跨插件访问 -由于 `nonebot2` 独特的插件加载机制,在使用 python 原有的 import 机制来进行插件之间的访问时,很可能会有奇怪的或者意料以外的情况发生。为了避免这种情况的发生,您可以有两种方法来实现跨插件访问: +由于 `nonebot2` 独特的插件加载机制,直接使用 python 原有的 import 机制来进行插件之间的访问时,很可能会有奇怪的或者意料以外的情况发生。为了避免这种情况的发生,您可以有如下方法来实现跨插件访问: 1. 将插件间的要使用的公共代码剥离出来,作为公共文件或者文件夹,提供给插件加以调用。 2. 使用 `nonebot2` 提供的 `export` 和 `require` 机制,来实现插件间的互相调用。 +3. 在保证插件被加载的情况下,可以采用 `import` 来访问。 第一种方法比较容易理解和实现,这里不再赘述,但需要注意的是,请不要将公共文件或者公共文件夹作为**插件**被 `nonebot2` 加载。 +第三种方法需要保证插件被加载,插件加载的方式可以参阅 [加载插件](../tutorial/plugin/load-plugin) 。 下面将介绍第二种方法—— `export` 和 `require` 机制: diff --git a/website/docs/advanced/permission.md b/website/docs/advanced/permission.md index 2e825dab..9466f257 100644 --- a/website/docs/advanced/permission.md +++ b/website/docs/advanced/permission.md @@ -41,13 +41,13 @@ async def _(bot: Bot, event: Event): ## 进阶 -`Permission` 除了可以在注册事件响应器时加以应用,还可以在编写事件处理函数 `handler` 时主动调用,我们可以利用这个特性在一个 `handler` 里对不同权限的事件主体进行区别响应,下面我们以 `CQHTTP` 中的 `GROUP_ADMIN` (普通管理员非群主)和 `GROUP_OWNER` 为例,说明下怎么进行主动调用。 +`Permission` 除了可以在注册事件响应器时加以应用,还可以在编写事件处理函数 `handler` 时主动调用,我们可以利用这个特性在一个 `handler` 里对不同权限的事件主体进行区别响应,下面我们以 `onebot` 中的 `GROUP_ADMIN` (普通管理员非群主)和 `GROUP_OWNER` 为例,说明下怎么进行主动调用。 ```python from nonebot import on_command -from nonebot.adapters.cqhttp import Bot -from nonebot.adapters.cqhttp import GroupMessageEvent -from nonebot.adapters.cqhttp import GROUP_ADMIN, GROUP_OWNER +from nonebot.adapters.onebot.v11 import Bot +from nonebot.adapters.onebot.v11 import GroupMessageEvent +from nonebot.adapters.onebot.v11 import GROUP_ADMIN, GROUP_OWNER matcher = on_command("测试权限")