代码之家  ›  专栏  ›  技术社区  ›  GaGex

由于交互,无法访问消息id。response.send_message()返回none,且不一致.py

  •  0
  • GaGex  · 技术社区  · 2 年前
    @bot.tree.command(name='create_dungeon')
    async def create_dungeon(interaction: discord.Interaction):
        new_doc_id = create_document(str(interaction.user))
        if new_doc_id == False:
            await interaction.response.send_message("Can't create more than one dungeon per user!")
        else:
            created_doc_query = maplestory_collection.find_one({"_id": new_doc_id})
            dps_players_count = len(created_doc_query["Dps"])
            tank_players_count = len(created_doc_query["Tank"])
            healer_players_count = len(created_doc_query["Healers"])
            class_types_max_players_and_counts = [
                ("Dps", dps_players_count, 10),
                ("Healer", healer_players_count, 3),
                ("Tank", tank_players_count, 4)
            ]
    
            embed = discord.Embed(title="Dungeon", description=f'Leader: {interaction.user} - ID {interaction.user.id}')
            for class_type, count, max_players in class_types_max_players_and_counts:
                embed.add_field(name=f"{class_type}", value=f"{max_players}/{count}")
            
            view = MyView(doc_id=new_doc_id, original_message_id=None, creator_id=interaction.user.id)
            view.create_buttons(buttons_info=buttons_info)
            
            message = await interaction.response.send_message(view=view, embed=embed)
            # message returns None even though it should return a Message object
    
    

    Message var应该返回消息对象,但不返回任何对象?我试图获取消息的id,然后将其设置为view属性 original_message_id 但它输出错误TypeError

    2 回复  |  直到 2 年前
        1
  •  0
  •   ItsThatOneJack    2 年前

    我查看了confirm.py的文档,得出的结论是,您的问题可能是由于interaction.response.send_message()不返回任何值,因此尝试将变量分配给其输出分配 None .

    我在以下网址找到了上述信息 The documentation page for InteractionResponse.send_message() ,因为该方法没有列出返回值。

    你可能需要找到另一种不需要响应ID的方法来实现你的目标,因为除了发送它然后在频道中获取最新帖子外,我找不到检索该ID的方法,这可能会导致问题,因为机器人的响应和获取消息之间发送了潜在的消息。

        2
  •  0
  •   Mis Ishrat Jahan    2 年前

    嘿。,乌尔涅 希熙。Smdue。De e Dkdbe。d

    dys Ydmdelddr.dd 超级ndjxd

    Mxdmxg Jf.jjx

    cfmfjdmdid Xjdmdid Xd.djdmxysoys 7.7-à§ 8z。z S D 做 Mz %%.% Fbfmf Fndhdhdjjfmf f.f.mjdsjssmjdsjssud mjdsjssmjdsjssud 除息的 S D Yde 德莱顿·d.dyd Dhe Ysbzd

    悉尼s Dydjdidgldg DND dh