背景信息:我正在制作博客。该博客通过Django模型存储有关数据库中文章的信息。我在所述模型中有一个FileField,它存档了与该文件一起使用的所有资产。我通过管理网站添加文章。
我想调用一个函数,在将对象保存到模型后立即解压缩该文件。我在哪里写这个函数?
答案 0 :(得分:12)
您可以使用Django中包含的信号调度程序。
SELECT obj.NAME AS TBL,trg.name,sm.definition,'<br>'
FROM SYS.OBJECTS obj
LEFT JOIN (SELECT trg1.object_id,trg1.parent_object_id,trg1.name FROM sys.objects trg1 WHERE trg1.type='tr' AND trg1.name like 'update%') trg
ON obj.object_id=trg.parent_object_id
LEFT JOIN (SELECT sm1.object_id,sm1.definition FROM sys.sql_modules sm1 where sm1.definition like '%suser_sname()%') sm ON trg.object_id=sm.object_id
WHERE obj.type='u'
ORDER BY obj.name;
有关详细信息,请参阅https://docs.djangoproject.com/en/1.10/topics/signals/#post-save。
答案 1 :(得分:1)
也许您可以在app / model中使用post_save信号:
https://docs.djangoproject.com/en/1.10/ref/signals/#post-save