當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Django MultiWidget.decompress用法及代碼示例


本文介紹 django.forms.MultiWidget.decompress 的用法。

聲明

decompress(value)

此方法從字段中獲取單個 “compressed” 值並返回 “decompressed” 值列表。可以假定輸入值有效,但不一定非空。

該方法必須由子類實現,並且由於值可能為空,因此實現必須是防禦性的。

“decompression” 背後的基本原理是,有必要將 “split” 表單字段的組合值轉換為每個小部件的值。

這方麵的一個示例是 SplitDateTimeWidget 如何將 datetime 值轉換為將日期和時間拆分為兩個單獨值的列表:

from django.forms import MultiWidget

class SplitDateTimeWidget(MultiWidget):

    # ...

    def decompress(self, value):
        if value:
            return [value.date(), value.time()]
        return [None, None]

提示

請注意, MultiValueField 有一個互補的方法 compress() 具有相反的職責 - 將所有成員字段的清理值合並為一個。

它提供了一些自定義上下文:

相關用法


注:本文由純淨天空篩選整理自djangoproject.com大神的英文原創作品 django.forms.MultiWidget.decompress。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。