Могу ли я иметь обычные параметры вместе с CGI :: Application :: Dispatch? - PullRequest
3 голосов
/ 14 января 2009

Я ценю возможность делать: http://server/controller/runmode или даже http://server/controller/runmode/id. Но если у меня есть много дополнительных параметров, я бы хотел иметь возможность делать обычные: http://server/controller/runmode?foo=bar&baz=frew, тем более, что у меня много JS, которые сделают последнее для меня. Кто-нибудь знает способ разрешить эту функцию?

Спасибо!

Редактировать : Хорошо, я понял это с помощью mpeters. Чтобы получить параметры, сгенерированные САПР, вы, очевидно, просто делаете $ self-> param ('foo'), но если вам нужны обычные параметры, вы делаете $ self-> query () -> param ('bar')

Ответы [ 2 ]

3 голосов
/ 14 января 2009

Вам не нужно делать ничего волшебного, чтобы это сработало, оно сработает само по себе. Вы просто получаете их по-другому. Если это происходит из строки запроса CGI, то вы получите его по

$self->query('param_name')

Если он исходит от PATH_INFO (часть, которую обрабатывает CGI::Application::Dispatch), то вы получите его

$self->param('param_name')

0 голосов
/ 23 февраля 2009

Редактировать : Хорошо, я понял это с помощью mpeters. Чтобы получить параметры, сгенерированные САПР, вы, очевидно, просто делаете $ self-> param ('foo'), но если вам нужны обычные параметры, вы делаете $ self-> query () -> param ('bar')

...