私はinstruction process to installing and setting up celeryに従っています。今は自分のタスクを実行しようとしています。セロリのタスクは実行されません
bin
draft1--
|
-------draft1 ----
|
--------celery.py
--------tasks.py
--------views.py
-------manage.py
-------templates
include
lib
ここに私のコードです:
settings.py
CELERY_BROKER_URL = 'amqp://guest:[email protected]:5672//'
celery.py
import os
from celery import Celery
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'app.settings')
app = Celery('app')
app.config_from_object('django.conf:settings', namespace='CELERY')
app.autodiscover_tasks()
tasks.py
from celery import shared_task
@shared_task
def print_this():
print('ONE MINUTE')
マイプロジェクトツリーは次のようになります
だから私のセロリの機能が動作しない、それはprint文を実行しません
print_this.delay()
をapp.views。私がしたいことは毎分機能を実行することです。何が問題なのか?
私はすべてを読んだことがあります。キュー部分について「把握する」ことは何もありませんか?私は 'CELERY_BROKER_URL'が私の指示と同じでなければならないので、私のアプリをdjangoのローカルサーバーで実行しています。私は '/ bin/celery -A draft1 worker -l info'を自分のプロジェクトルート(ここでmanage.py)で試してみましたが、このエラーを返しました:' AttributeError:module 'draft1'に 'app''/'' AttributeError:module 'draft1'には属性 'celery''がありません。これはどういう意味でしょうか? ( 'draft1は私のアプリ名です') – Zorgan
キューサーバーをセットアップしましたか? rabbitmqのように? –
はい、私のdjangoサーバーとrabbitmqが動作しています。 – Zorgan