dastiw1
@dastiw1
Frontend Developer

Как в Yii2 изменить формат создаваемых ссылок через Url::to?

Я делаю отправку почты при регистрации.
Сайт работает так: фронтенд на angular, то есть аяксовый, а бэкенд Yii2.
Вот код метода:
public function getUrl()
    {
        switch ($this->type) {
            case self::TYPE_CONFIRMATION:
                $route = '/#/api/registration/confirm';
                break;
            case self::TYPE_RECOVERY:
                $route = '/#/api/recovery/reset';
                break;
            case self::TYPE_CONFIRM_NEW_EMAIL:
            case self::TYPE_CONFIRM_OLD_EMAIL:
                $route = '/#/api/settings/confirm';
                break;
            default:
                throw new \RuntimeException;
        }

        return Url::to([$route, 'id' => $this->user_id, 'code' => $this->code], true);
    }

В начале приходило письмо в таком формате:
newne/user/confirm/3/JFQFZNy5T8Ff0t9dprgYWYPm5aJ23TA5

После того как я поменял /user/confirm на /#/api/registration/confirm
URL сменился на такое:

newne/#/api/registration/confirm?id=14&code=VcLlwl...

А роуты на angularJS в формате "/route/:param1/:param2" и еще так красивей))

На основе какого закона Yii построил URL подругому?
  • Вопрос задан
  • 221 просмотр
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
"Сайт на angular, то есть аяксовый" - при чем тут yii? Вы их слепили? фронтенд на angular, бэкенд на YII?

"На основе какого закона Yii построил URL подругому?" - копайте urlmanager в конфиге и читайте мануалы www.yiiframework.com/doc-2.0/yii-helpers-url.html
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы