python - 如何向不同设置的用户发送不同的消息?不和谐.py
问题描述
首先,我是 discord.py 的初学者。很难解释我的问题,但我会尽力而为:
我正在尝试制作一个命令,该命令向具有不同设置的用户发送不同的消息。
例如:假设我的机器人有 2 个命令!command
和!settings
. 用户使用设置命令更改他/她的设置:“!settings (setting1/setting2/setting3/setting4...)”
如果用户使用!command
with (setting1),它将发送“response1”。但是如果用户有(setting2)它会发送“response2”,如果用户有(setting3)它会发送“response3”等等......
我将不胜感激任何帮助:)
解决方案
我会尽力给你解释的!
为了实现它,我们需要将这些数据存储在数据库中!(什么是数据库?存储一些我们可以随时更新、删除和使用的数据。)所以,我们将把它存储在数据库中。(我们要存储什么?我们要存储每个用户的设置)
例如!如果有人使用!settings 1那么我们将像这样将它存储在数据库中。
{ "user_id": discord_user_id_here,"settings":1}
每个人的不和谐用户 ID 都是唯一的,因此我们使用它来将其存储在数据库中!。(但是我们将在哪里存储它?有一家名为“MongoDB”的免费最佳公司正在为我们提供免费数据库!我们将保存我们的数据在那里。我们可以用 python 完全控制它)
现在我们已经将该用户保存在数据库中,我们可以在其中做任何事情!但现在重要的是,当他使用第一个命令“!command”保存后,我们需要从数据库中获取设置!我们可以根据他的设置运行任何东西!
链接:
MongoDB - https://www.mongodb.com/
MongoDB python 文档 - https://pymongo.readthedocs.io/en/stable/
完整的 MongoDB python 最佳教程 - https://www.youtube.com/watch ?v=rE_bJl2GAY8
推荐阅读
- javascript - Openlayers 4:从地图获取像素数据似乎有偏移
- react-native - 如何在 React-native 项目中插入 expo 模块?
- oracle - 如何从两个字符串列中创建表名?
- java - RabbitMQ - 收到后删除消息
- r - 在我的时间序列图中添加第二行时遇到问题
- java - 将 Java 9 HttpClient 代码升级到 Java 11:BodyProcessor 和 asString()
- javascript - 将一个返回 foo 的 promise 映射到另一个返回 bar 的 promise?
- java - 绑定视图时不能放置分隔符
- dart - 让用户在 Flutter 的前端创建新元素
- python - 将二维列表转换为字典