2016-01-20 67 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

你說得對。只是這些文件本身的元屬性與從前端傳遞來的元屬性不同......因此它引起了一些錯誤,但它不是關於物理文件本身。 –