mirror of
https://github.com/nonebot/nonebot2.git
synced 2025-09-11 06:26:42 +00:00
🎨 reformat docs
This commit is contained in:
@ -11,7 +11,7 @@ from nonebot.permission import SUPERUSER
|
|||||||
from nonebot.adapters import Bot
|
from nonebot.adapters import Bot
|
||||||
from nonebot import on_command
|
from nonebot import on_command
|
||||||
|
|
||||||
matcher = on_command('测试超管', permission=SUPERUSER)
|
matcher = on_command("测试超管", permission=SUPERUSER)
|
||||||
|
|
||||||
|
|
||||||
@matcher.handle()
|
@matcher.handle()
|
||||||
@ -37,14 +37,13 @@ async def _(bot: Bot, event: Event):
|
|||||||
`Permission` 除了可以在注册事件响应器时加以应用,还可以在编写事件处理函数 `handler` 时主动调用,我们可以利用这个特性在一个 `handler` 里对不同权限的事件主体进行区别响应,下面我们以 `CQHTTP` 中的 `GROUP_ADMIN` (普通管理员非群主)和 `GROUP_OWNER` 为例,说明下怎么进行主动调用。
|
`Permission` 除了可以在注册事件响应器时加以应用,还可以在编写事件处理函数 `handler` 时主动调用,我们可以利用这个特性在一个 `handler` 里对不同权限的事件主体进行区别响应,下面我们以 `CQHTTP` 中的 `GROUP_ADMIN` (普通管理员非群主)和 `GROUP_OWNER` 为例,说明下怎么进行主动调用。
|
||||||
|
|
||||||
```python
|
```python
|
||||||
from nonebot.adapters.cqhttp import Bot
|
|
||||||
from nonebot.adapters.cqhttp.event import GroupMessageEvent
|
|
||||||
from nonebot.adapters.cqhttp.permission import GROUP_ADMIN, GROUP_OWNER
|
|
||||||
from nonebot import on_command
|
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
|
||||||
|
|
||||||
matcher = on_command("测试权限")
|
matcher = on_command("测试权限")
|
||||||
|
|
||||||
|
|
||||||
@matcher.handle()
|
@matcher.handle()
|
||||||
async def _(bot: Bot, event: GroupMessageEvent):
|
async def _(bot: Bot, event: GroupMessageEvent):
|
||||||
if await GROUP_ADMIN(bot, event):
|
if await GROUP_ADMIN(bot, event):
|
||||||
@ -63,8 +62,8 @@ async def _(bot: Bot, event: GroupMessageEvent):
|
|||||||
如同 `Rule` 一样, `Permission` 也是由非负数个 `PermissionChecker` 组成的,但只需其中一个返回 `True` 时就会匹配成功。下面则是 `PermissionChecker` 和 `Permission` 示例:
|
如同 `Rule` 一样, `Permission` 也是由非负数个 `PermissionChecker` 组成的,但只需其中一个返回 `True` 时就会匹配成功。下面则是 `PermissionChecker` 和 `Permission` 示例:
|
||||||
|
|
||||||
```python
|
```python
|
||||||
from nonebot.permission import Permission
|
|
||||||
from nonebot.adapters import Bot, Event
|
from nonebot.adapters import Bot, Event
|
||||||
|
from nonebot.permission import Permission
|
||||||
|
|
||||||
async def async_checker(bot: Bot, event: Event) -> bool:
|
async def async_checker(bot: Bot, event: Event) -> bool:
|
||||||
return True
|
return True
|
||||||
@ -89,4 +88,3 @@ Permission(async_checker1) | sync_checker | async_checker2
|
|||||||
```
|
```
|
||||||
|
|
||||||
同样地,如果想用 `Permission(*checkers)` 包裹构造 `Permission` ,函数必须是异步的;但是在利用 `或 |` 符号连接构造时, `Nonebot` 会自动包裹同步函数为异步函数。
|
同样地,如果想用 `Permission(*checkers)` 包裹构造 `Permission` ,函数必须是异步的;但是在利用 `或 |` 符号连接构造时, `Nonebot` 会自动包裹同步函数为异步函数。
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user