2016-11-22 39 views
0

我將創建一個註冊用戶可以上傳圖片的表單。我可以創建模型,表單,視圖。我唯一的問題是我希望用戶能夠每週上傳2個文件。如果安裝了2個文件,我希望該表單是被動的。如果你能幫助我如何做到這一點,我會很高興。Django - 每週上傳表格限制

+0

請顯示您到目前爲止所嘗試的內容。關於表單被動,你的意思是你希望它被禁用? – lucasnadalutti

+0

是的,我想要被禁用。 –

回答

0

基本上你需要不同的結構來存儲這些信息,第一個鏡頭是:

  1. 創建帶有字段的其他型號:ID,USER_ID,UPLOAD_DATE,FILE_ID
  2. 每次用戶做出上傳 - 添加排在上述型號/表
  3. 而且上傳前進行檢查 - 多少個文件在過去的兩個星期被上傳用戶 - 這是類似的東西:

    def can_upload(user_id): 
        now = now() 
        two_weeks_ago = now - timedelta(days=14) 
        upload_count = UploadFileLog.objects.filter(
         user_id=user_id, 
         upload_date__gte=two_weeks_ago, 
         upload_date__lte=now 
        ).count() 
        return upload_count < 2 # you can make constant for '2' 
    
  4. 您也可以使用上面的trunin開啓/關閉頁面上的上傳表單 - 將結果傳遞給模板。

希望這會有所幫助。

+0

謝謝@ sebastian-opałczyński非常感謝您的幫助。 :) –