本文整理汇总了PHP中RequestHandler::handleAction方法的典型用法代码示例。如果您正苦于以下问题:PHP RequestHandler::handleAction方法的具体用法?PHP RequestHandler::handleAction怎么用?PHP RequestHandler::handleAction使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RequestHandler
的用法示例。
在下文中一共展示了RequestHandler::handleAction方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: handleAction
/**
* Controller's default action handler. It will call the method named in $Action, if that method exists.
* If $Action isn't given, it will use "index" as a default.
*/
protected function handleAction($request, $action)
{
foreach ($request->latestParams() as $k => $v) {
if ($v || !isset($this->urlParams[$k])) {
$this->urlParams[$k] = $v;
}
}
$this->action = $action;
$this->requestParams = $request->requestVars();
if ($this->hasMethod($action)) {
$result = parent::handleAction($request, $action);
// If the action returns an array, customise with it before rendering the template.
if (is_array($result)) {
return $this->getViewer($action)->process($this->customise($result));
} else {
return $result;
}
} else {
return $this->getViewer($action)->process($this);
}
}
示例2: handleAction
/**
* Controller's default action handler. It will call the method named in "$Action", if that method
* exists. If "$Action" isn't given, it will use "index" as a default.
*
* @param SS_HTTPRequest $request
* @param string $action
*
* @return DBHTMLText|SS_HTTPResponse
*/
protected function handleAction($request, $action)
{
foreach ($request->latestParams() as $k => $v) {
if ($v || !isset($this->urlParams[$k])) {
$this->urlParams[$k] = $v;
}
}
$this->action = $action;
$this->requestParams = $request->requestVars();
if ($this->hasMethod($action)) {
$result = parent::handleAction($request, $action);
// If the action returns an array, customise with it before rendering the template.
if (is_array($result)) {
return $this->getViewer($action)->process($this->customise($result));
} else {
return $result;
}
}
// Fall back to index action with before/after handlers
$beforeResult = $this->extend('beforeCallActionHandler', $request, $action);
if ($beforeResult) {
return reset($beforeResult);
}
$result = $this->getViewer($action)->process($this);
$afterResult = $this->extend('afterCallActionHandler', $request, $action, $result);
if ($afterResult) {
return reset($afterResult);
}
return $result;
}