我正在设置到控制器的路由,并且不断收到 404 或“开始使用 silverstripe 框架”页面。
在 routes.yaml 我有:
---
Name: nzoaroutes
After: framework/routes#coreroutes
---
Director:
rules:
'view-meetings/$Action/$type': 'ViewMeeting_Controller'
我的控制器如下所示:
class ViewMeeting_Controller extends Controller {
public static $allowed_actions = array('HospitalMeetings');
public static $url_handlers = array(
'view-meetings/$Action/$ID' => 'HospitalMeetings'
);
public function init() {
parent::init();
if(!Member::currentUser()) {
return $this->httpError(403);
}
}
/* View a list of Hospital meetings of a specified type for this user */
public function HospitalMeetings(SS_HTTPRequest $request) {
print_r($arguments, 1);
}
}
我创建了一个模板 (ViewMeeting.ss),它只输出 $Content,但是当我刷新站点缓存并访问 /view-meetings/HospitalMeetings/6?flush=1
我得到默认的“开始使用 Silverstripe 框架”页面
我知道 routes.yaml 中的路由正在工作,因为如果我更改那里的路由并访问旧 URL,我会得到 404,但该请求似乎不会触发我的 $Action...