В Django 1.4, Form.has _измененные ()и Form.changed _данные, которые недокументированы, работают должным образом?

Из исходного кода видно, что класс FormDjango 1.4 имеет метод has_changed()и свойство changed_data, которые кажутся довольно полезными, но не задокументированы. Мой вопрос: :делают ли они эту работу, как и ожидалось, т.е.:

  • В Form.clean(), Form.has_changed()возвращает True, если какие-либо данные формы изменились, в противном случаеFalse
  • В Form.clean(), Form.changed_dataесть список имен полей, значения которых изменились.

Если да, то есть ли какие-либо особые причины не использовать их, помимо обычных предостережений/опасностей, связанных с использованием недокументированных функций (, т.е. подверженных изменениям, не поддерживаемых и т. д. )?

ПРИМЕЧАНИЕ 1. :Чтобы они работали с пользовательскими виджетами, эти виджеты должны иметь метод _has_changed(), определенный для встроенных виджетов.

ПРИМЕЧАНИЕ 2. :Интересно, что документация включает небрежное упоминание метода Formset.has_changed(), но не Form.has_changed().

18
задан Ghopper21 5 August 2012 в 13:47
поделиться