Помогите пожалуйста со Slug поведением

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
IDarknessI
Сообщения: 8
Зарегистрирован: 2016.10.07, 09:38

Помогите пожалуйста со Slug поведением

Сообщение IDarknessI »

Код: Выделить всё

[code=php]Скажите пожалуйста где здесь ошибка,выбивает просто что страница не найдена.

Вот модель
[code=php]public function behaviors()
    {
        return [
            [
                'class' => SluggableBehavior::className(),
                'attribute' => 'title',
            ],
        ];
    }
 
    public function rules()
    {
        return [
           
            [['title', 'slug'], 'string', 'max' => 128],
            [['slug'], 'unique'],
           
        ];
    }
} 
[/code] [/code]
Вот контроллер

Код: Выделить всё

public function actionView($id, $slug = null)
    {
        return $this->render('view', [
            'model' => $this->findModel($id),
        ]);
    }
 
    protected function findModelBySlug($id,$slug)
    {
        if (($model = Post::findOne([ 'slug' => $slug])) !== null) {
            return $model;
        } else {
            throw new NotFoundHttpException();
        }
    }
вот роутинг

Код: Выделить всё

'rules' => [
                'class' => 'yii\web\UrlManager',
                'category/<id:\d+>/page/<page:\d+>' => 'category/view',
                'category/<id:\d+>' => 'category/view',
                'product/<id:\d+>' => 'product/view',
                'search' => 'category/search',
                //'post/<id:\d+>' => 'post/view',
                'page/<page:\d+>' => 'post/index',
                '<controller:(post)>/<slug>' => '<post>/view',
                ['pattern' => 'post/<id:\d+>-<slug:(.*)>', 'route'=>'post/post',
                    ],
     
               
            ],
Последний раз редактировалось IDarknessI 2016.10.18, 16:25, всего редактировалось 1 раз.
Аватара пользователя
Said
Сообщения: 138
Зарегистрирован: 2015.06.04, 10:16

Re: Помогите пожалуйста со Slug поведением

Сообщение Said »

Доброго времени суток. Пожалуйста оформите код правильно (там есть кнопка Code). Пример внизу.
Может это viewtopic.php?t=19445 вам поможет.
Последний раз редактировалось Said 2016.10.18, 15:46, всего редактировалось 2 раза.
Аватара пользователя
Said
Сообщения: 138
Зарегистрирован: 2015.06.04, 10:16

Re: Помогите пожалуйста со Slug поведением

Сообщение Said »

Скажите пожалуйста где здесь ошибка,выбивает просто что страница не найдена.

Вот модель

Код: Выделить всё

public function behaviors()
    {
        return [
            [
                'class' => SluggableBehavior::className(),
                'attribute' => 'title',
            ],
        ];
    }
 
    public function rules()
    {
        return [
           
            [['title', 'slug'], 'string', 'max' => 128],
            [['slug'], 'unique'],
           
        ];
    }
}
Вот контроллер

Код: Выделить всё

public function actionView($id, $slug = null)
    {
        return $this->render('view', [
            'model' => $this->findModel($id),
        ]);
    }
 
    protected function findModelBySlug($id,$slug)
    {
        if (($model = Post::findOne([ 'slug' => $slug])) !== null) {
            return $model;
        } else {
            throw new NotFoundHttpException();
        }
    }

вот роутинг

Код: Выделить всё

'rules' => [
                'class' => 'yii\web\UrlManager',
                'category/<id:\d+>/page/<page:\d+>' => 'category/view',
                'category/<id:\d+>' => 'category/view',
                'product/<id:\d+>' => 'product/view',
                'search' => 'category/search',
                //'post/<id:\d+>' => 'post/view',
                'page/<page:\d+>' => 'post/index',
                '<controller:(post)>/<slug>' => '<post>/view',
                ['pattern' => 'post/<id:\d+>-<slug:(.*)>', 'route'=>'post/post'],
],
Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Помогите пожалуйста со Slug поведением

Сообщение futbolim »

А так?
'<controller>/<slug>' => '<controller>/view',

Почему 'class' => 'yii\web\UrlManager', лежит в rules?
IDarknessI
Сообщения: 8
Зарегистрирован: 2016.10.07, 09:38

Re: Помогите пожалуйста со Slug поведением

Сообщение IDarknessI »

futbolim писал(а):А так?
'<controller>/<slug>' => '<controller>/view',

Почему 'class' => 'yii\web\UrlManager', лежит в rules?
Извините я в yii новичок,только начал изучать и пытаюсь написать интернет магазин...Вы бы не могли мне пример какой-то сбросить?
Аватара пользователя
za4me
Сообщения: 152
Зарегистрирован: 2016.06.26, 15:29
Контактная информация:

Re: Помогите пожалуйста со Slug поведением

Сообщение za4me »

IDarknessI писал(а):Извините я в yii новичок,только начал изучать и пытаюсь написать интернет магазин...Вы бы не могли мне пример какой-то сбросить?
Я вам в вашей прошлой теме привел полностью рабочий пример который вам нужно было лишь адаптировать под себя.
futbolim писал(а):Почему 'class' => 'yii\web\UrlManager', лежит в rules?
ТС, для начала, прочите полностью документацию. Если у вас нет опыта с php вообще, тогда сначала документацию по php, далее ознакомьтесь с MVC и только тогда приступайте к освоению доки yii2.
IDarknessI
Сообщения: 8
Зарегистрирован: 2016.10.07, 09:38

Re: Помогите пожалуйста со Slug поведением

Сообщение IDarknessI »

с PHP опыт есть...а вот с yii проблемы,документацию действительно не прочитал,читаю по ходу дела и пытаюсь сделать,но вот со слаг почему-то не получается....
Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Помогите пожалуйста со Slug поведением

Сообщение futbolim »

Напишите скайп в личку, помогу
Ответить