【发布时间】:2016-01-22 13:41:50
【问题描述】:
这是在模型文档的 pre_delete 上运行的内容。当按照建议的最佳实践放入单独的文件 (signals.py) 时,此代码会被完全忽略。放入模型文件后,效果很好。
from django.db.models.signals import pre_delete, pre_save
from django.dispatch import receiver
from _myTools.functions import ImageProcessing
from content_image.models import Document
import os
# Image deletion when deleting entire entry
@receiver(pre_delete, sender=Document, dispatch_uid='document_delete_signal')
def entry_deletion_images_delete(sender, instance, using, **kwargs):
for key, value in instance.imageSizes.items():
name_of_image_field = str(getattr(instance, key)) # Converts to string, if not is object itself
os.remove(instance.baseDir + name_of_image_field)
setattr(instance, key, None)
那么问题是什么?我应该在那里进口更多的东西吗?或者我应该在某个地方导入这个文件?
【问题讨论】:
标签: python django django-signals