ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Общие вопросы программирования (https://forum.antichat.xyz/forumdisplay.php?f=206)
-   -   disnake modal view (https://forum.antichat.xyz/showthread.php?t=1506178)

Require 18.03.2024 12:51

почему когда открываю модальное окно и нажимаю submit бот пишет ошибка?

Python:





Код:

import
disnake
from
disnake
.
ext
import
commands
from
disnake
import
TextInputStyle
class
modal
(
disnake
.
ui
.
Modal
)
:
def
__init__
(
self
)
:
components
=
[
disnake
.
ui
.
TextInput
(
label
=
"Предложение"
,
placeholder
=
"Введите предложение для сервера или бота"
,
custom_id
=
"sentences"
,
style
=
TextInputStyle
.
short
,
max_length
=
200
)
]
super
(
)
.
__init__
(
title
=
"Предложение для сервера или бота"
,
components
=
components
)
class
sentences
(
commands
.
Cog
)
:
def
__init__
(
self
,
bot
)
:
self
.
bot
=
bot
@commands.Cog.listener
(
)
async
def
on_ready
(
self
)
:
guild
=
self
.
bot
.
get_guild
(
.
.
.
)
# Замените на ID вашего сервера
channel
=
guild
.
get_channel
(
.
.
.
)
# Замените на ID канала, где будете ставить реакцию
view
=
disnake
.
ui
.
View
(
)
view
.
add_item
(
disnake
.
ui
.
Button
(
emoji
=
"📨"
,
style
=
disnake
.
ButtonStyle
.
blurple
,
custom_id
=
"create"
)
)
embed
=
disnake
.
Embed
(
title
=
"Предложение для сервера или бота"
,
description
=
"**Здесь вы можете отправить предложение для сервера или бота**\n**Нажмите на кнопку ниже, и в модальном окне напишите, что хотите предложить нашему серверу или боту**"
,
color
=
0xfcfcfc
)
embed
.
add_field
(
name
=
"**Примечание**"
,
value
=
"**Если ваше предложение нам не понравится, то вас не предупреждат об этом**"
,
inline
=
False
)
embed
.
set_thumbnail
(
url
=
"https://media.discordapp.net/attachments/1210442042086391839/1219165968635531264/006bc40bbc6f16d1f724409df7e7e098.jpg?ex=660a4fc9&is=65f7dac9&hm=8f62a37084947bd393aa340de6eb47a64fb8ef007b6c6ed582cb6fdfb947ed76&=&format=webp&width=602&height=602"
)
embed
.
set_image
(
url
=
"https://media.discordapp.net/attachments/1210442042086391839/1219166669742669904/4f1aa325c25974327016cfbe098b8637.jpg?ex=660a5071&is=65f7db71&hm=92fdc14ad94f487349d973bc7cb40310c100628229d06577965b6886903744f9&=&format=webp&width=703&height=396"
)
embed
.
set_footer
(
text
=
"В течении двух недель ваше предложение будет рассмотрено и возможно будет добавлено в бота или на сервер"
)
await
channel
.
send
(
embed
=
embed
,
view
=
view
)
@commands.Cog.listener
(
)
async
def
on_button_click
(
self
,
inter
:
disnake
.
MessageInteraction
)
:
if
inter
.
data
.
custom_id
==
"create"
:
await
inter
.
response
.
send_modal
(
modal
=
modal
(
)
)
async
def
callback
(
self
,
inter
:
disnake
.
ModalInteraction
)
-
>
None
:
await
inter
.
send
(
"**Ваше предложение было отправлено, и будет рассмотрено в ближайшее время!**"
)
channel
=
self
.
bot
.
get_channel
(
1218817686373404722
)
embed
=
disnake
.
Embed
(
title
=
"Предложение для сервера или бота"
,
description
=
f"Предложение от{inter.author.mention}"
,
color
=
0x54b9f7
)
for
key
,
value
in
inter
.
text_values
.
items
(
)
:
embed
.
add_field
(
name
=
key
,
value
=
value
,
inline
=
False
)
await
channel
.
send
(
embed
=
embed
)
def
setup
(
bot
)
:
bot
.
add_cog
(
sentences
(
bot
)
)


Require 18.03.2024 15:41

Цитата:

Сообщение от .caterpillarteal$

Lua:





Код:

local
activation
=
"test"
-- Любая команда в кавычках
local
active
=
false
function
toggleActivation
(
)
active
=
not
active
sampAddChatMessage
(
active
and
"Activated"
or
"Deactivated"
,
-
1
)
end
function
main
(
)
while
not
isSampAvailable
(
)
do
wait
(
0
)
end
sampAddChatMessage
(
'[InsuranceCompany.{1c77ff}lua{FFFFFF}] Author: {1c77ff}CordHoldOn{FFFFFF} || Version: {1.2}'
,
-
1
)
-- Другие функции и регистрации команд остаются без изменений
-- ...
while
true
do
wait
(
0
)
if
active
then
-- когда переменная active равна true
renderFontDrawText
(
my_font
,
'Status: '
..
status
,
posXx
,
posYy
,
-
1
)
-- Дальнейший код скрипта
end
end
end
sampRegisterChatCommand
(
activation
,
toggleActivation
)
main
(
)



сказочный *******

.caterpillarteal$ 18.03.2024 15:42

бля не туда

Vаnish 20.03.2024 22:03

Попробуй обработку исключения:

Python:





Код:

async
def
callback
(
self
,
"""... disnake не шарю"""
)
-
>
None
:
try
:
# code
except
Exception
as
e
:
await
inter
.
response
.
send_message
(
f"Ошибка:{e}"
,
ephemeral
=
True
)



и ищи ответ по ошибке там компилятор должен ссылаться на ошибку в коде.

Require 21.03.2024 14:54

Цитата:

Сообщение от Killezzo

Попробуй обработку исключения:

Python:





Код:

async
def
callback
(
self
,
"""... disnake не шарю"""
)
-
>
None
:
try
:
# code
except
Exception
as
e
:
await
inter
.
response
.
send_message
(
f"Ошибка:{e}"
,
ephemeral
=
True
)



и ищи ответ по ошибке там компилятор должен ссылаться на ошибку в коде.

Уже разобрался

hahabog 28.03.2024 23:42

классы с большой буквы

Require 30.03.2024 17:32

Цитата:

Сообщение от hahabog

классы с большой буквы

это просто гениально классы с большой буквы


Время: 19:24