0

Django easy-thumbanils 2.2 をインストールしました。これまではうまく機能していましたが、パフォーマンスを向上させるために非同期にすることにしました。docsに従って、次のコードを実装しました。

models.py

#saved_file.connect(generate_aliases_global) -> Code used for synchronous operation
@receiver(saved_file)
def generate_thumbnails_async(sender, fieldfile, **kwargs):
print('Calling') #This is being called during an upload
tasks.add.delay(10,2) # A Test function in tasks.py. Confirmed it is being called and the result outputted by the worker
tasks.generate_thumbnails.delay(
        model=sender, pk=fieldfile.instance.pk,
        field=fieldfile.field.name) #this function not called????

タスク.py

from easy_thumbnails.files import generate_all_aliases

@task
def generate_thumbnails(model, pk, field):
    print('Calling gen_thumb task') #not called from models.py
    instance = model._default_manager.get(pk=pk)
    fieldfile = getattr(instance, field)
    generate_all_aliases(fieldfile, include_global=True)

@shared_task
def add(x, y):
    print('Calling ad task') #Called from models.py 
    return x + y

add タスクが呼び出されているのに、generate_thumbnails タスクが呼び出されていないのはなぜですか?

4

0 に答える 0