セロリタスクでデータベースレコードを作成したいと思います。しかし、何らかの理由でobject.save()
メソッドがtask.apply_async()
(作業を非同期に適用する)で動作していません。ローカルで実行している間、セロリのタスクでデータベースに保存されているDjando Celery:セロリタスクはDBにレコードを作成しません
同じレコード(ティッカー):
get_all_tickers.apply()
しかし、非同期モードで保存されていません。どちらの場合も
get_all_tickers.apply_async()
文をINSERTサーバーログに表示されます。
models.py
class Ticker(TimeStampedModel):
ask = models.DecimalField(max_digits=18, decimal_places=8)
bid = models.DecimalField(max_digits=18, decimal_places=8)
pair = models.ForeignKey(Pair)
tasks.py
from celery import shared_task
...
@shared_task()
def get_all_tickers():
pair = Pair.objects.last()
ticker = Ticker(ask=Decimal(1.0), bid=Decimal(1.0), pair=pair)
ticker.save()