• Как сгруппировать по двум полям?

    tsklab
    @tsklab Куратор тега SQL Server
    Здесь отвечаю на вопросы.
    Скобки у TOP намекают на MS SQL.
    SELECT TOP (100) [error_number] ,
                     COUNT( * ) AS [Total],
                     STRING_AGG( [error_desc], '; ' ) AS [Desc]
      FROM Db.tab_error
      GROUP BY [error_number]
      ORDER BY 2
    Ответ написан
    Комментировать
  • Как оператор палит использование 4g роутера?

    CTpaHHoe
    @CTpaHHoe
    для обхода ограничений надо определить тип блокировки - TTL, IMEI или же DPI (анализ не свойственных устройству протоколов и портов)

    в случае TTL блокировки устанавливай прошивку с возможностью управления iptables. потребуется что-то вроде
    iptables -t mangle -A POSTROUTING -j TTL --ttl-set 64
    Ответ написан
    1 комментарий
  • Использование sql lite 3 и telebot одновременно несколькими людьми, будет ли ошибка?

    Нужно использовать машину состояний и redis для предварительного сбора всех данных
    когда получены корректные данные, тогда записывать их в бд. это нужно для того, чтобы не писать отдельно в бд имя, потом дату и проч. а иначе, если пользователь еще не закончил ввод и ушел, то в базе будут негодные данные
    для бота, где не сильно важна скорость можно использовать обычный модуль sqlite3. если не создавать новые конекты на каждую запись в базу, то этот модуль будет последовательно записывать в БД и так замедлять работу
    Для сильно нагруженных ботов нужно использовать асинхронную библиотеку бота aiogram и асинхронный модуль aiosqlite https://pypi.org/project/aiosqlite/
    Ответ написан
    Комментировать
  • Какая БД лучше всех для Python?

    @bubaley
    Здравствуйте, если разработка идёт на локальной машине до достаточно будет sqlite3. Чтобы не заморачиваться с поднятием у себя на машине нормальных баз данных. Ее удобно бэкапить, переносить и не нуждается в настройке.
    Если переносите все в прод., То лучше использовать postgresql. Хотя бы потому что она opensource. И рабоатет быстрее того же mysql. Хотя в последних версиях разница совсем незначительная. Зато уронить ее сложнее.
    https://m.habr.com/ru/post/348220
    Вот статья в который расписаны все + и -.
    Конечно есть проекты где лучше использовать nosql, например mongodb.
    Но думаю, Вы все поймёте после прочтения статьи.
    Ответ написан
    1 комментарий
  • Как сделать приветствие на аиограм 2.22.2?

    @Tomorrow772
    Используй:

    @dp.chat_member_handler()
    async def some_handler(msg: ChatMemberUpdated):


    Работает даже при 10к людей и более
    Ответ написан
    2 комментария
  • Платежи на Django. Как реализовать?

    WStanley
    @WStanley
    Back-end Developer
    Доброго!
    Ну если в общах чертах то происходит это так:
    На сайте надо создать корзину, чтоб пользователь мог собрать воедино то что он хочет купить.
    При переходе в корзину у него должна быть кнопка "оформить заказ" при этом можно дать выбрать ему способ доставки, ввести свой адрес и остальные требуемые вещи.
    Далее варианта 2:
    Первый простой:
    • Регистрируетесь в интернет кошельке например(яндекс, вебмани и тд) получаете свой уникальный номер кошелька
    • в этом кошельке есть пример куда и как отправлять данные об оплате
    • вы просто реализуете выполнение этих инстукций по нажатию кнопки "оформить заказ"
    • после оплаты сайт-кошелек перенаправит пользователя обратно(обратная ссылка указывается в настройках) вам на сайт где вы его уведомите об удачной оплате и пожелаете хорошего дня!

    Второй сложный:
    • Ваш заказчик заключает договор с банком "рога и копыта"
    • В банке также будет инструкция по правилам которой вы будете отправлять данные об оплате заказа
    • скорее всего еще будут спец ключи(сертификаты) для идентификации клиета(в инструкции будет описано)
    • Так же заказчику придется прикупить кассовый аппарат
    • после оплаты банк перенаправит пользователя обратно(обратная ссылка указывается в настройках) вам на сайт где вы его уведомите об удачной оплате и пожелаете хорошего дня!


    Подробнее не получится ибо у всех систем свои нюансы, но они описаны в инструкциях, чаще всего в разделе "для разработчикоф"
    Данные придется отправлять методом POST, на сайте надо будет организовать https, но это не точно!
    Ответ написан
    Комментировать
  • Как добавить вторую кнопку к inline режиму?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Наверное, добавить к списку результатов второй такой же элемент, нет?
    Ответ написан
    2 комментария
  • Как удалить сообщение бота с помощью aiogram?

    @alekssamos
    Программист любитель
    Всё должно удаляться, есть рабочий проект.
    Возможно прав администратора в группе нет?
    Вот пример:
    import asyncio
    from contextlib import suppress
    
    from aiogram import types
    from aiogram.utils.exceptions import (MessageToEditNotFound, MessageCantBeEdited, MessageCantBeDeleted,
                                          MessageToDeleteNotFound)
    
    async def delete_message(message: types.Message, sleep_time: int = 0):
        await asyncio.sleep(sleep_time)
        with suppress(MessageCantBeDeleted, MessageToDeleteNotFound):
            await message.delete()

    ...
    msg = await message.reply("Я удалюсь через 30 секунд")
        asyncio.create_task(delete_message(msg, 30))
    Ответ написан
  • Как отправить сообщение боту от имени пользователя?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Да, потребуется использовать клиентский API (MTProto). https://core.telegram.org/#getting-started

    Библиотеки tdlib, для python - telethon или pyrogram, для других языков см. гугл.
    Ответ написан
    Комментировать