Как найти YII маршруты из URL - PullRequest
0 голосов
/ 05 июля 2018

Я новичок в Yii Framework. Я делаю одно небольшое исправление в веб-приложении Yii Framework. Их сторонние провайдеры API Fax (Fax.de) что-то меняют, я пытаюсь изменить код, но не могу получить нужный файл.

Если URL-адрес www.example.com / paymentoption . Какой контроллер будет работать и где взять папку Route?

Пожалуйста, помогите мне ...

Ответы [ 3 ]

0 голосов
/ 05 июля 2018

Из документации:

Маршрутизация включает в себя два этапа:

входящий запрос разбирается на маршрут и связанный запрос параметры; действие контроллера, соответствующее проанализированному маршруту, создан для обработки запроса. При использовании формата URL по умолчанию, парсинг запроса в маршрут так же прост, как получение значения GET параметр запроса с именем r.

При использовании красивого формата URL-адреса, менеджер URL-адреса изучит зарегистрированные URL-правила, чтобы найти соответствующий, который может решить запрос в маршрут. Если такое правило не может быть найдено, Будет сгенерировано исключение yii \ web \ NotFoundHttpException.

После разбора запроса на маршрут, пришло время создать действие контроллера идентифицируется по маршруту. Маршрут сломан на несколько частей косыми чертами в нем. Например, сайт / индекс будет быть разбитым на сайт и индекс. Каждая часть является идентификатором, который может относиться к модуль, контроллер или действие.

В этом случае ссылка: www.example.com / paymentoption будет использовать контроллер PaymentoptionController и actionIndex , или это может быть модуль.

Рекомендую прочитать документацию по части Маршрутизация и Url manager : https://www.yiiframework.com/doc/guide/2.0/en/runtime-routing

0 голосов
/ 05 июля 2018

Yii - это обычная основанная структура. То есть вы должны следовать определенным соглашениям об именах, чтобы создать свой компонент.

Например. Ваш контроллер должен быть

    SomenameController

Обратите внимание, указанное имя контроллера имеет соглашение об именах Controller, примыкающее к Somename

Здесь, у вас нет папки к маршрутизатору, но есть контроллеры

     //Get controller name
     echo Yii::$app->controller->id

Вы можете найти контроллер с таким именем в вашей папке контроллеров.

0 голосов
/ 05 июля 2018

в yii нет папки или файла маршрута. Из Url вы можете просто найти контроллер с именем paymentoption. и в этом вы можете найти метод actionIndex, который вызывается по умолчанию

...