Форма перенаправить на URL, содержащий запрос? - чистый HTML или Django - PullRequest
0 голосов
/ 07 декабря 2009

Я хочу создать окно поиска в Django, которое расположено по адресу URL / search и перенаправляет на дружественный URL-адрес, такой как / search / queryterm, вместо того, чтобы иметь? Q = queryterm в URL)

Таким образом, пользователь вводит термин запроса, передает его в / search / queryterm и показывает список результатов.

Я могу получить и отобразить результаты, используя URL, например / search / queryterm.

Но я не знаю лучшего способа справиться с перенаправлением URL из формы. Должно ли это быть перенаправление в чистом HTML в форме (которая выглядит немного хакерской), и если да, то как я могу это реализовать?

Или должна быть форма POST для / search /, а затем ResponseRedirect для страницы / search / queryterm? Разве это не будет медленнее?

Спасибо!

1 Ответ

5 голосов
/ 07 декабря 2009

Размещение поискового запроса - плохая идея и неправильное использование глагола HTTP для того, что должно быть запросом GET, я думаю. Есть ли причина, по которой вы не можете перенаправить на дружественный URL-адрес на основе параметров request.GET?

Я также не согласен с принципом использования «дружественных» URL для поисковых запросов; по моему мнению, они должны использоваться для постоянных ресурсов, а не для чего-то временного, например результатов поиска.

Причина, по которой произошел своего рода «дружественный» URL-адрес, заключается в том, что строки запросов использовались для доступа к вещам, которые должны существовать на простых URL-адресах, например /product.php?id=35. Я не думаю, что результаты поиска попадают в эту категорию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...