1

我正在尝试在我的 SilverStripe 网站上设置重定向。

我已经创建了自己的模块,现在我希望用户在登录后被重定向到该模块。

我已经尝试过Director::redirect($Url_base . 'myModule'),但它不起作用。

有没有人有什么建议?

4

2 回答 2

3

试试这个:http ://www.ssbits.com/customize-the-redirect-after-a-successful-member-login/

于 2010-07-01T18:02:04.243 回答
1

我做了这样的事情:

class MyLoginForm extends MemberLoginForm {
    public function dologin($data) {
        parent::dologin($data);
        if (Director::redirected_to() && $Member = Member::currentUser()) {
            $this->controller->response->removeHeader('Location');
            if ($Member->Email == 'admin') {
                $destination = '/admin';
            } else {
                $destination = '/user/' . $Member->Username;
            }
            Director::redirect($destination);
        }
    }
}

如果是管理员用户,我将他们重定向到/admin. 如果是另一个用户,我将他们重定向到/user/username.

于 2011-05-11T20:54:04.233 回答