2010-12-06 50 views
3
  • 假設有人提交表格。 (我完全使用Django的表單框架)
  • 表單經過我的models.py並且不能很好地驗證。
  • 我將它們重定向回頁面,並顯示錶單錯誤。
  • 所有的文本框都有它們的初始值,所以用戶不必重新輸入它們。但我的「選擇文件」失去了它的價值!它沒有選擇文件。
  • 用戶現在需要重新選擇文件。這太糟糕了!

回答

2

如果您單獨驗證文件,您可以在返回錯誤之前存儲它,並向用戶提供其上傳已保存的指示(可選擇允許他們選擇上傳另一個文件還是使用來自以前提交)。這是很多額外的內務管理,可以簡化,但是不可避免的,因爲,出於安全原因,瀏覽器不允許服務器預先選擇<input type="file">的值。