2
我正在研究一個允許用戶提交表單的Web應用程序。一旦表格被提交,get_db_prep_value()
加密所有字段。我正在努力解決django管理應用程序中的字段的功能。解密過程工作正常,問題是在提交表單時調用to_python方法中指定的解密方法。我對to_python方法的理解是,只有在從數據庫(選擇查詢)到數據庫(更新,插入)進行數據庫查詢時才調用它。在每個數據庫查詢上調用Django to_python函數
這裏是我的自定義字段類:
class EncryptedField(models.Field):
# ...
def to_python(self, value):
return decrypt(value)
def get_db_prep_value(self, value):
return encrypt(value)
我怎樣才能獲得to_python
方法將只有當形式改變窗體頁上Django管理應用程序中加載叫什麼名字?
當表單提交,服務器接收數據時,它需要一個對象綁定到形式 - 即獲得與從數據庫相關聯因此to_python叫你注意的對象。 –
@pastylegs感謝您的回覆。只有一件事,我不明白爲什麼一個對象需要綁定到插入的表單。我可以理解更新或插入插入後,頁面會重新加載新對象的數據以供查看。這是你指的是什麼?而在我的情況下,一旦表單被提交,一個新的表單將被加載空字段。 – esfandiyar