Вызов /search/
должен привести к "вы ничего не отправили", но, с другой стороны, вызов /search/?q=
должен привести к "вы отправили" "
Браузеры должны добавить q=
когда он пуст, потому что они должны включать все поля, которые являются частью формы.Только если вы выполняете некоторые манипуляции с DOM в Javascript (или настраиваете действие отправки javascript), вы можете получить такое поведение, но только если у пользователя включен javascript.Поэтому вам, вероятно, следует просто проверить наличие непустых строк, например:
if request.GET.get('q'):
message = 'You submitted: %r' % request.GET['q']
else:
message = 'You submitted nothing!'