170 похожих чатов

Я хочу сделать чтобы пользователь заполнил форму обратной связи на

сайте и эти данные пришли в телеграмм, такая реализация является правильной или бред полнейший? bot = telebot.TeleBot(const.token)
#bot.send_message( 444352638, "dddbgfbgf")
def formMes(self, form):
if request.method == "POST":
name = request.POST.get("user_name")
email = request.POST.get("user_email")
message = request.POST.get("user_message")
#mess = "*ЗАЯВКА С САЙТА*:" + "\n" + "*ИМЯ*: " +str(name) + "\n" + "*EMAIL*: " + str(email)+ "\n" + "*COOБЩЕНИЕ:*" + str(message)
requests.get('https://api.telegram.org/bot{}/sendMessage'.format(const.token), params=dict(chat_id='444352638',name = 'user_name', email = 'user_email', message = 'user_message'))

2 ответов

4 просмотра

бред однозначно, кошмар с формой

я так понимаю это метод в классбэйзд вьюхе? я бы вынес в отдельную внешнюю функцию (а лучше даже в отдельный файл). Не вижу где передаешь request, не понятно зачем форма. С телегой не работал, по последней строке сложно сказать. Точно в телегу нужно отправлять гет методом? Здесь можно современно f'https://api.telegram.org/bot{const.token}/sendMessage'

Похожие вопросы

Обсуждают сегодня

А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
Есть предложения, как подобное можно упростить?
Hemul GM
12
У меня вопросик назрел. Почему, создав класс без наследования и реализации деструктора Destroy, деструктор не вызывался при free. Потом указал наследование от tobject и overri...
Сергей Бычков
8
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
just use free version ?? pycharm has a free version
Fan / Ac
9
Такой вопросец - есть функция function MySuperDuperConcat(const a: array of AnsiString): AnsiString; Как мне в её теле сделать вот так? Result:=Concat(a); А не грустный вариан...
notme
15
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
86
В си можно напрямую работает с памятью и процом?
Николай
7
Всем привет. Поделитесь, пожалуйста, опытом. Есть форма, на которой имеется dbgrid и кнопки: добавить, редактировать, удалить. Если нет записей в dbgrid, то кнопки редактирова...
Евгений
5
Карта сайта