2014-01-24 39 views
2

我有一個關於formwizard的問題。我正在使用一個帶有6個步驟的formwizard,並且在第五步中有一個文件字段。除非我嘗試上傳包含非ascii字符的文件名的文件,否則一切正常。我寫了一個方法來替換非ASCII字符並將其放入我的模型的保存方法中。這也是有效的。Python Django表單嚮導:如何在保存步驟數據之前更改文件字段的文件名?

現在的問題是,表單嚮導會在最終保存所有表單中的數據之前將文件上載到臨時目錄。這裏模型的保存方法沒有被調用,因此文件名沒有改變,我得到一個錯誤。如何在保存步驟的數據之前更改文件名?

更新:我有配置我的Apache,使其接受非ASCII文件名 - https://docs.djangoproject.com/en/1.4/howto/deployment/modpython/#if-you-get-a-unicodeencodeerror

回答

0

下面是示例代碼。你可以用文件名也替換logo.jpg

user.id_file.path.save("user/"+str(user.id)+"/logo.jpg", form.cleaned_data['logo']) 
user.id_file.save() 
+0

謝謝Priyank,但我會在哪裏把這些代碼?在我的形式還是在我的嚮導視圖? – Magda

+0

當然是嚮導視圖。 –

相關問題