import os
from celery import Celery
from celery.schedules import crontab
from flask import Flask
from flask_mail import Mail, Message
celery = Celery('app', broker='amqp://celery:456237819@localhost:5672/celery', backend='rpc://')
@celery.on_after_configure.connect
def setup_periodic_tasks(sender, **kwargs):
# Executes every min
sender.add_periodic_task(
crontab(),
send_mail.s(),
)
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_RESULT_SERIALIZER = 'json'
CELERY_TASK_SERIALIZER = 'json'
CELERY_IGNORE_RESULT = False
CELERY_TRACK_STARTED = True
CELERYD_LOG_LEVEL = "INFO"
CELERY_TIMEZONE = 'UTC'
CELERY_ENABLE_UTC = True
app = Flask(__name__)
app.config['MAIL_SERVER'] = 'smtp.gmail.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USERNAME'] = 'xyz@gmail.com'
app.config['MAIL_PASSWORD'] = '456237819'
mail = Mail(app)
@celery.task
def send_mail():
msg = Message('Hello', sender=app.config['MAIL_USERNAME'], recipients=
['abc@gmail.com'])
msg.body = "First time send email by flask"
with app.app_context():
mail.send(msg)
@app.route('/')
def index():
res = send_mail.delay()
print(res.status, 99)
return 'Mail sent'
Когда я запускаю цветок, он дает [D 200621 09:25:35 канал: 105] с помощью channel_id: 1 поднять NotImplementedError NotImplementedError Я не понял, почему это дает. Пожалуйста, помогите там, где я что-то упускаю. версия, которую я использую сельдерей = 4.4.5 цветок = 1.0.1