Метод process_data
Метод process_data применяется к экземпляру класса Field и вызывается для обработки сырых данных, полученных из формы. Первым параметром передаётся значение value, которое затем проходит базовую проверку и сохраняется в атрибут data. Если значение пустое или отсутствует, метод присваивает data значение None. Данный метод обычно переопределяют в пользовательских полях для выполнения дополнительной обработки или валидации.
Синтаксис
process_data(value)
Пример
Давайте создадим простое поле и обработаем входящее значение:
from flask import Flask
from wtforms import Field
app = Flask(__name__)
field = Field()
field.process_data('abcde')
print(field.data)
Результат выполнения кода:
"abcde"
Пример
Давайте передадим в метод process_data пустое значение и посмотрим, что окажется в атрибуте data:
from flask import Flask
from wtforms import Field
app = Flask(__name__)
field = Field()
field.process_data('')
print(field.data)
Результат выполнения кода:
None
Пример
Давайте переопределим метод process_data в пользовательском поле, чтобы автоматически приводить строку к верхнему регистру:
from flask import Flask
from wtforms import Field
app = Flask(__name__)
class UpperField(Field):
def process_data(self, value):
if value:
value = value.upper()
super().process_data(value)
field = UpperField()
field.process_data('abcde')
print(field.data)
Результат выполнения кода:
"ABCDE"
Смотрите также
-
класс
Field,
который представляет базовое поле формы -
метод
process_formdata,
который обрабатывает данные из формы -
атрибут
data,
который хранит обработанное значение поля -
атрибут
raw_data,
который хранит исходные данные из формы