Loading [MathJax]/jax/output/CommonHTML/config.js
社区首页 >问答首页 >discord.py -如何将命令添加到父命令

discord.py -如何将命令添加到父命令
EN

Stack Overflow用户
提问于 2020-09-26 04:53:35
回答 1查看 1.1K关注 0票数 1

我想将命令作为参数分配给另一个命令。

我试过这样的方法:

代码语言:javascript
代码运行次数:0
复制
@bot.command()
async def the_parrent():
    pass

@bot.command(parent=the_parrent)
async def child1(ctx):
    await ctx.send("This is child 1")

@bot.command(parent=the_parrent)
async def child2(ctx):
    await ctx.send("And this is child 2")

现在,当我写!the_parrent时,什么都不会发生,但如果我写!the_parrent child1!the_parrent child2,也不会发生任何事情。

但是,如果我只编写!child1!child2,则相应的消息将由机器人发送。

内置的!help命令还显示,child1和child2也没有分配给the_parrent:

代码语言:javascript
代码运行次数:0
复制
​No Category:
 child1      
 child2      
 help        Shows this message
 the_parrent 
 
Type !help command for more info on a command.
You can also type !help category for more info on a category.

所以,我的问题是我理解了父参数错误吗?如果不是,如何将命令添加到另一个命令中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-26 05:56:52

没有parent参数!parents属性只是一个attribute,它返回该命令分配给的所有父级。这些东西称为command groups而不是parents,您应该创建“父命令”,如下所示:

代码语言:javascript
代码运行次数:0
复制
@bot.group()
async def parent_command(ctx):
    pass

通过给它bot.group()装饰器。

之后,您可以使用@parent_command.command()而不是@bot_command为它分配子命令。

代码语言:javascript
代码运行次数:0
复制
@parent_command.command()
async def subcommand(ctx):
    await ctx.send("This is child 1.")

您可以选择是否总是希望调用父命令,或者只有在没有找到子命令时才可以通过向其父命令添加ìnvoke_without_command=True kwarg来进行选择。

代码语言:javascript
代码运行次数:0
复制
@bot.group(invoke_without_command=True)
async def parent_command(ctx):
    pass

这样,!parent_command!parent_command somethingsomething将触发父命令,!parent_command subcommand将触发子命令。

更多信息&可选的kwargs可以在commands.group文档中找到。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64077917

复制
相关文章
1.3 风险管理失败
一个新公司Drysdale获得了超出贷款额度贷款,然后通过Chase代理进行交易,Drysdale破产后由Chase来承担损失
rocket
2018/09/14
1.4K0
Apache 绿色版本官方版本下载
在网上搜了一圈,没有找到合适的精简Apache绿色版本,都要收取C币。 记录一下怎么在官网找到编译好的 windows 绿色版本,即加压即可用。
叉叉敌
2019/02/20
3.6K0
kubernetes 问题排查: 高版本 containerd 下载镜像失败
在 containerd 运行时的 kubernetes 线上环境中,出现了镜像无法下载的情况,具体报错如下:
CNCF
2021/05/27
9.6K2
kubernetes 问题排查: 高版本 containerd 下载镜像失败
Windows 7/8.1/10 全版本官方ISO下载地址
在早些时候,Microsoft 曾爆出过 MSDN 文件直链下载漏洞,任何人均可以直接下载 MSDN 资源而无需订阅帐号。遗憾的是微软很快修复了直链漏洞。虽然 itellyou 也是获得官方镜像的优秀途径,但 ED2K 协议的下载方式实用性大打折扣,同时版本并不齐全。
reizhi
2022/09/26
1.4K0
Windows 7/8.1/10 全版本官方ISO下载地址
python Django 管理站点1.3
服务器 运行如下命令可以开启服务器 python manage.py runserver ip:port 可以不写ip,默认端口为8000 这是一个纯python编写的轻量级web服务器,仅在开发阶段使用 服务器成功启动后,提示如下信息 默认端口是8000,可以修改端口 python manage.py runserver 8080 打开浏览器,输入网址“127.0.0.1:8000”可以打开默认页面 如果修改文件不需要重启服务器,如果增删文件需要重启服务器 通过ctrl+c停止服务器 管理操作 站点分
Lansonli
2021/10/09
4970
Django安装及简单使用1.3
Django安装及简单使用1.3 代码都在github: URL:https://github.com/njxshr/codes/tree/master/testdj Django模型 Django Django 对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。 Django 为这些数据库提供了统一的调用API。 我们可以根据自己业务需求选择不同的数据库。 如果你没安装 mysql 驱动,可以执行以下命令安装: sudo pip install
98k
2018/04/11
8530
Django安装及简单使用1.3
django官方入门教程_DJango
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,模板T和视图V。其最大特点自带一个后台管理系统,可以让只要少量代码就能实现后台管理,尤其适合内容管理网站(如博客,新闻,公司首页等信息类网站),适合中小型web网站。
全栈程序员站长
2022/10/04
6510
django官方入门教程_DJango
Django 学习笔记 1.3 视图和模板
前一节是后端的内容,这一节则是前端的内容,我们将继续编写投票应用,并且专注于如何创建公用界面——也被称为“视图”。
twowinter
2020/04/17
1.2K0
FLStudio21官方正式版本发布更新下载
万众期待的玛奇朵FL Studio21 版本终于正式上线啦!我们昨天也为大家提前放出80多项改进的详细说明,
用户7442547
2022/12/07
3470
下载图片失败
报错信息:com.qcloud.cos.exception.CosClientException: More data read than expected: dataLength=7821; expectedLength=0; includeSkipped=true; in.getClass()=class com.qcloud.cos.internal.ServiceClientHolderInputStream; markedSupported=false; marked=0; resetSinceLastMarked=false; markCount=0; resetCount=0
用户5860314
2020/07/02
3.8K1
R329 v0.5.0版本下载失败问题
====问题现象==== 通过一号通平台下载时, repo init -u ssh://xxx@sdk.allwinnertech.com/git_repo/P101901/manifest.git -b master -m R329-Tina.xml 后提示:
阿志小管家
2024/02/02
1350
Xcode最新及各历史版本安装方法·官方镜像下载地址
个人看法,从重复利用的角度,不推荐用AppStore安装和更新,推荐直接去官网的历史版本下载资源页面下载,这样下载之后还能有版本备份,等下次再需要的时候还能重复利用。
陈满iOS
2018/09/10
21.3K0
Xcode最新及各历史版本安装方法·官方镜像下载地址
jQuery1.3以上版本"@"的问题
jQuery1.3.2已经发布好一段时间了,近日把原来的项目全部从jQuery1.2.6升级为1.3.2了.但是有一点要注意,1.3版以上的jQuery在根据选择属性选择时,去掉了@符号,有某些情况下原有的代码可能会无法正常运行: <input type="radio" name="mySex" value="1"></input>男 <input type="radio" name="mySex" value="-1" checked="checked"></input>女 <hr/> <input ty
菩提树下的杨过
2018/01/22
7590
python的源代码下载_官方下载python源码,编译linux版本的python「建议收藏」
我这里使用的时centos7-mini,centos系统本身默认安装有python2.x,版本x根据不同版本系统有所不同,可通过 python –V 或 python –version 查看系统自带的python版本
全栈程序员站长
2022/09/23
2.5K0
python的源代码下载_官方下载python源码,编译linux版本的python「建议收藏」
Django 1.11官方教程翻译
一直以来由于英语废所以极端抵触看英文文档。感觉人还是要逼一下自己,所以就有了这篇翻译。如果有翻译错误的地方欢迎在评论中指正。 Let’s learn by example. Throughout this tutorial, we’ll walk you through the creation of a basic poll application. 让我们通过样例来学习Django吧。 本教程将通过一个简单的投票应用来让您熟悉Django。 It’ll consist of two parts:
小小科
2018/05/03
1.6K0
Django 1.11官方教程翻译
windows chromedriver 下载失败
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
云雀叫了一整天
2019/09/29
1.1K0
Django 文件下载
参考文章https://www.cnblogs.com/supery007/p/8146035.html
kirin
2020/05/21
1.1K0
pycharm更新pip失败_更新pip版本失败
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/172950.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/25
1.7K0
pycharm更新pip失败_更新pip版本失败
Pr软件中文版下载安装 Pr官方软件下载 全版本PR永久使用
PR软件是一款很强大的工具,它可以帮助我们进行视频编辑和制作。如果你想要让自己的视频更加专业,那么PR软件就是你必不可少的工具。
用户10413399
2023/03/21
5670
Pr软件中文版下载安装 Pr官方软件下载 全版本PR永久使用
I²C协议官方标准文档2021最新版本下载
做电子相关开发工作的朋友,肯定都知道I²C协议,但是你知道它的一些保留功能吗?比如10位设备地址、复位I²C总线、I²C保留字节、广播地址、24位器件厂商ID等等,这些在I²C协议官方标准文档中都有详细介绍。
单片机点灯小能手
2022/12/18
1K0
I²C协议官方标准文档2021最新版本下载

相似问题

html2canvas和jsPDF,css样式呈现错误的pdf格式

13

带有TypeScript的样式化组件的'css‘属性

115

带有CSS边框样式的Chrome呈现问题

10

Angular2如何在typescript中更改css类的样式?

218

使用innerHtml使用angular2呈现CSS

34
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文