if __name__ == '__main__':
executor.start_polling(dp, skip_updates=True)
async def get_profile_photo(chat_id: int) -> InputFile:
logger.debug("начало теста")
profile_pictures = await dp.bot.get_user_profile_photos(chat_id)
logger.debug("фото профиля взято")
photo_path = f"../media/prf{chat_id}.jpg"
os.makedirs(os.path.dirname(photo_path), exist_ok=True) # создает директорию если она не существует
if profile_pictures.total_count != 0:
logger.debug("фото профиля ЕСТЬ")
await profile_pictures.photos[0][-1].download(destination=photo_path)
logger.debug("фото профиля СКАЧАНО")
class User(AbstractUser):
# change current user fields
username = models.CharField(max_length=255, unique=False, blank=True)
email = models.EmailField(unique=True)
# my custom fields
phone = models.CharField(max_length=255)
address = models.CharField(max_length=255, blank=True)
. Подключаешь это все в settings и там же добавляешь параметр AUTH_USER_MODEL = 'way.toYou.model'. Остается настроить это в админке и вуаля.# Отправляет сообщения всем пользователям.
async def announcement(message: types.Message):
if message.chat.id == admin_chat_id:
message_to_send = message.get_args()
stmt = select(Questionnaire).where(Questionnaire.is_delete == False, Questionnaire.is_banned == False)
result = engine.connect().execute(stmt).fetchall()
await bot.delete_message(message.chat.id, message.message_id)
for user in result:
try:
await bot.send_message(user.user_id, message_to_send)
except:
pass
await bot.send_message(message.chat.id, 'Сообщения доставлены')