2016-01-20 63 views
2
@receiver(pre_save, sender=Document, dispatch_uid='question_save_signal') 
def log_save_question(sender, instance, using, **kwargs): 
    p = instance 

这是我用来拦截在Django管理中保存的代码。从这个函数内部,我需要访问request.FILES来访问刚刚在ImageField中选择并正在提交的新文件。 你会怎么做?如何从django管理表单提交访问request.FILES?

+0

你检查文件是否可通过适当的实例属性? –

回答

1

当你有pre_save函数时,属性已经设置为对象,但是它还没有保存到数据库中。 所以,如果你的文档模型有一个属性image,你应该能够通过访问它:instance.image

+0

你说得对。只是这些文件本身的元属性与从前端传递来的元属性不同......因此它引起了一些错误,但它不是关于物理文件本身。 –