Django сохранить строку в поле даты - PullRequest
2 голосов
/ 01 ноября 2011

В моем приложении Django есть DateField (формат «ГГГГ-ММ-ДД»). Когда я пытаюсь сохранить строку «2011-11-01», я не получаю ошибки, но мои поля получают значение NULL.

Я пытался сделать это с помощью функции strptime из библиотек даты и времени, но с той же проблемой. В основном все это происходит в форме

У меня есть

    if form.valid():
        form.cleaned_data['date'] = year + '-' + month + '-' day
        form.save()
    

Ответы [ 2 ]

2 голосов
/ 01 ноября 2011

часть проверки формы включает в себя очистку данных.cleaned_data dict содержит объекты Python, а не (строковые) данные публикации.

, поэтому form.cleaned_data['data'] должен быть datetime объектом (или вам необходимо отредактировать форму или данные перед очисткой)

0 голосов
/ 01 ноября 2011

Я думаю, что вы должны проверить объект модели, который принимает объект даты, и подтвердить, что вы не установили его всегда равным нулю ... На самом деле я думаю, что неправильный термин присутствует, не в методе представления или сохранения, а в моделиобъект, который должен взять объект даты.Может быть, вам стоит подумать о публикации кода вашей модели здесь, чтобы мы увидели.

...