Как установить значения по умолчанию в django для HttpRequest.GET? - PullRequest
2 голосов
/ 04 мая 2010

У меня есть веб-страница, которая отображает данные на основе даты по умолчанию. Затем пользователь может изменить свое представление данных, выбрав дату с помощью средства выбора даты и нажав кнопку отправки. У меня уже есть переменная, так что если дата не выбрана, используется дата по умолчанию .... так в чем же проблема? Проблема возникает, если пользователь пытается ввести страницу URL без параметра ... например, так:

http://mywebpage/viewdata (example A)

вместо

http://mywebpage/viewdata?date= (example B)

Я пытался использовать:

if request.method == 'GET':

но, видимо, даже пример А все еще возвращает истину. Я уверен, что делаю очевидную ошибку новичка, но все равно спрошу ... Есть ли более простой способ обработки примера A, кроме передачи URL-адреса в строку и проверки строки на «? Date =»?

Ответы [ 3 ]

6 голосов
/ 04 мая 2010

Вы упомянули, что у вас есть значения по умолчанию, определенные где-то.

Вместо того, чтобы делать что-то вроде этого:

if 'date' in request.GET:
    date = request.GET['date']
else:
    date = '2010-05-04'

Проще сделать это так:

date = request.GET.get('date', '2010-05-04')
3 голосов
/ 04 мая 2010

Я не совсем понимаю ваш вопрос - еще какой-то код помог бы - но вам не нужно делать:

if 'date' in request.GET:
0 голосов
/ 04 мая 2010

http://docs.djangoproject.com/en/dev/ref/request-response/

Звучит, вы заинтересованы в POST

...