Home  >  Article  >  Backend Development  >  yii框架两点初级疑惑

yii框架两点初级疑惑

WBOY
WBOYOriginal
2016-06-06 20:39:55877browse

1 比如fronted/web/index.php 展现的内容是怎么确定的(index本身不是展现页面的)
2 对于一个app,常用到主页返回,那么gethomeurl在哪里设置的呢?

回复内容:

1 比如fronted/web/index.php 展现的内容是怎么确定的(index本身不是展现页面的)
2 对于一个app,常用到主页返回,那么gethomeurl在哪里设置的呢?

本来想根据源码分析 时间有限太特么啰嗦了
直接进入 common/config/main.php

<code>return [
    //应用的默认路由 goHome默认会跳转到这里
    'defaultRoute' => 'controller/action'

    还有一种就是配置系统urlManeger组件
    ‘components’ => [
        'urlManager' => [
            //这个baseUrl 最终也会决定homeUrl的去处相当于给当前应用指定一个域名然后真个应用的                                路由都基于这个域名跳转
            'baseUrl' => 'http://www.test.com',
            'class' => 'yii\web\UrlManager',
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            //'suffix' => 'path',
        ],
    ]

]
</code>

  1. structure-controllers
  2. $controllerObj->redirect(); $controllerObj->goHome(); 示例中的用法, 其他参考 api

  1. 在Yii中,默认的url应该是这样的: http://域名/index.php?r=controllerName/actionName&参数1=值1&参数2=值2
    对于fronted/web/index.php,目测,frontend应该是网站前台,即frontend目录下有一个web目录,web目录里有index.php文件,这个文件时前台的唯一入口。

  2. 返回主页不就是在控制内 $this->redirect('/'); 翻译出来就是http://域名/这个网址吗?

PS:对第一点补充一下,web目录应该是web server的根目录,比如你要访问fooController下的actionTest()方法,你的url应该这样写:http://域名/index.php?r=foo/test

第一个问题不是很明白,第二个问题:返回主页可以在控制器里使用$this->goHome();

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn