如何从url查找YII路由

如何从url查找YII路由,yii,yii2,yii2-advanced-app,yii-components,Yii,Yii2,Yii2 Advanced App,Yii Components,我是Yii框架的新手。我正在Yii框架web应用程序中做一个小的修改。他们的第三方传真(Fax.de)API提供程序更改了一些内容,我正在尝试更改代码,但无法获得正确的文件 如果URL是www.example.com/paymentoption。哪个控制器可以工作?在哪里可以获取路由文件夹 请帮助我…在yii中没有路由文件夹或文件。 从Url中,您可以简单地找到名为paymentoption的控制器。您可以在文档中找到默认调用的方法actionIndex: 路由包括两个步骤: 传入请求被解析为路

我是Yii框架的新手。我正在Yii框架web应用程序中做一个小的修改。他们的第三方传真(Fax.de)API提供程序更改了一些内容,我正在尝试更改代码,但无法获得正确的文件

如果URL是www.example.com/paymentoption。哪个控制器可以工作?在哪里可以获取路由文件夹


请帮助我…

在yii中没有路由文件夹或文件。 从Url中,您可以简单地找到名为paymentoption的控制器。您可以在文档中找到默认调用的方法actionIndex:

路由包括两个步骤:

传入请求被解析为路由和关联查询 参数;与解析的路由对应的控制器操作为 创建以处理请求。使用默认URL格式时, 将请求解析为路由与获取 获取名为r的查询参数

当使用pretty URL格式时,URL管理器将检查 已注册URL规则,以查找可解析请求的匹配规则 进入一条路线。如果找不到这样的规则,则 将引发yii\web\NotFoundHttpException异常

一旦请求被解析为路由,就应该创建 由路由标识的控制器操作。路线中断了 通过斜线分成多个部分。例如,站点/索引将 分为站点和索引。每个部分都是一个ID,可以引用 模块、控制器或动作

在这种情况下,链接:www.example.com/paymentoption将使用控制器PaymentoptionControlleractionIndex,或者它可以是一个模块


我建议阅读路由Url管理器部分的文档:

Yii是一个基于传统的框架。也就是说,您应该遵循某些命名约定来创建组件

比如说。你的控制器应该是

    SomenameController
注意,上面的控制器名称有命名约定
controller
Somename

在这里,你没有文件夹到路由器,但控制器

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

您可以在controllers文件夹中找到具有该名称的控制器。

除了下面的答案外,您还应该检查应用程序配置文件中的一些
urlManager
规则
,这些规则可能会将您的
paymentoption
重定向到“常规”位置以外的任何其他位置。