Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 1, 2016 08:11:21

tayursky
Зарегистрирован: 2016-08-08
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

form.has_changed() и DateTimeField

Есть модель с DateTimeField, на её основе сделал форму, после передаю request.POST где поле DateTimeField имеет строковый вид ‘01.01.2016’.
Записываются такие данные без проблем, есть один неприятный нюанс, если использовать has_changed(), то он всегда True.
Changed_data указывает то самое поле DateTimeField.
Подскажите как обойти этот неприятный момент?

 models.py
class cost(models.Model):
    value = models.DecimalField(max_digits=10, decimal_places=2, null=True, blank=True)
    begin_date = models.DateTimeField(default=timezone.now, blank=True)
forms.py
class form_cost(forms.ModelForm):
    class Meta:
        model = model.cost
        fields = ['value', 'begin_date']
view.py
cost = model.cost.objects.get(id=int(request.POST['cost']))
form = form.form_cost(request.POST, instance=cost)
if form.has_changed():
    # Всегда True
    changed_data = form.changed_data

Отредактировано tayursky (Дек. 1, 2016 08:12:22)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version