@EVOSandru6

Как в Yii1 сделать чпу на категория/товар и слить слэш между ними?

Добрый день,

Сейчас у меня в классе Products есть метод для ссылки:

public function getUrl() {
        return Yii::app()->createUrl('/products/view', [
            'id'        =>   $this->id,
            'category'  =>   $this->category->name_alias,
            'alias'     =>   $this->name_alias,
        ]);
    }

public function relations() {
		return  [
                       'category'              =>      [self::BELONGS_TO,  'CategoryProducts', 'category_id'],
		];
	}


1. Формируется такой url : domen/products/127/caterory-alias-name/alias-name
2. Желаемый url : domen/products/caterory-alias-name/alias-name

urlManager:

'/'                                                         =>  'site/index',
        '<action:(login|logout|registration)>'                      =>  'users/<action>',
        '<action:(contact)>'                                        =>  'site/<action>',
        'products/<id:\d+>/<category:[\w_-]+>/<alias:[\w_-]+>' => 'products/view',
        '<controller:\w+>/<id:\d+>'                                 =>  '<controller>/view',
        'products/<id:\d+>/<alias:[\w_-]+>' => 'products/item',
        '<controller:\w+>/<action:\w+>/<id:\d+>'                    =>  '<controller>/<action>',
        '<controller:\w+>/<action:\w+>'                             =>  '<controller>/<action>',
        /** Менеджер */
        '<module:smanager>'                                          =>   '<module>/orders/index',
        '<module:smanager>/<controller:\w+>/<id:\d+>'                =>   '<module>/<controller>/view',
        '<module:smanager>/<controller:\w+>'                         =>   '<module>/<controller>/index',
        '<module:smanager>/<controller:\w+>/<action:\w+>/<id:\d+>'   =>   '<module>/<controller>/<action>',
        '<module:smanager>/<controller:\w+>/<action:\w+>'            =>   '<module>/<controller>/<action>',


Но по адресу:

domen/products/127/caterory-alias-name/alias-name ловлю ошибку:

Error 404
Системе не удалось найти запрашиваемое действие "127".


Хотя я шел на products/view

Как отбросить цифру 127, получить и распарсить Желаемый url?
  • Вопрос задан
  • 236 просмотров
Пригласить эксперта
Ответы на вопрос 1
Тык

У вас точно такой же принцип. просто повторите как там. а потом меняйте на свой нейминг.
Ответ написан
Ваш ответ на вопрос

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

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