Получение времени подачи формы в Джанго - PullRequest
1 голос
/ 05 мая 2011

Какая команда находит дату / время публикации / получения отправки в django? Например, кто-то отправляет электронное письмо, и я хочу иметь возможность вытащить -

Email@example.com - time_submitted

Ответы [ 3 ]

8 голосов
/ 05 мая 2011

Если вы имеете в виду при обработке формы в представлении, то почему бы просто не использовать datetime.datetime.now () в любой точке представления?Это будет миллисекундами после того, как пользователь нажал Submit

3 голосов
/ 05 мая 2011

Два подхода:

Сначала вы можете изменить представление, чтобы создать поле и добавить его в форму при сохранении ответа.Что-то вроде:

if form.is_valid() :
    timestamp = datetime.now()
    ... save it, print it, whatever...

Лучший способ - обрабатывать его на уровне модели и просто иметь поле для него.

Теперь, когда вы сохраняете ввод в вашу БД, у вас есть время создания, когда был вызван метод save ().

0 голосов
/ 05 мая 2011

Http-операции get / post не отправляют время на сервер, так что stevejalim упоминает, что вы можете получить временную метку в коде на стороне сервера.Кроме того, вы можете передать дополнительный параметр, представляющий время, когда пользователь щелкнул / отправил страницу.Вы должны установить параметр, используя JavaScript:

$('#form1').submit(function() {
    var input = $("<input>").attr("type", "hidden").attr("name", "timestamp").val(new Date().getTime());
    $('#form1').append($(input));
    return true;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...