• 控制器和路由


    1.控制器以Controller做为后缀,继承自 yiiwebController

    2.动作以action为前缀,public访问修饰

    3.控制器ID去类名后缀,全部转为小写,如果是驼峰命名多个单词,转为中杠分隔

    4.动作ID去前缀,全部转为小写,如果是驼峰命名多个单词,转为中杠分隔。

    5.路由如何指向动作 控制器ID、动作ID

    6.URL访问规则index.php?r=路由   传参数使用&参数=值的方式

    7.默认动作ID index定义在 yiiaseController::$defaultAction

    Url生成

    Url帮助类工作方式的演示

    use yiihelpersUrl;

    //同一个控制器中其他action

    echo  Url::toRoute(['update','id'=>'1']);//如果没有参数,可以传字符窜,不需要数组

    //不同控制器的action(同一个module)

    echo Url::toRoute('post/index');

    //绝对路径(可以跳出当前module,如果启动了module,需要在前面加入module的ID)

    echo Url::toRoute('/site/index');

    //当前控制器中,多个单词组成的action,例如 actionUserInfo  

    echo Url::toRoute('user-info');  //控制器类似

    //带域名的Url

    echo Url::toRoute('site/index',true);

    //路由别名

    echo Url::toRoute('@register');//路由别名,需要先注册别名,例如 Yii::setAlias('@register','site/register');

    //拼接image、css等

    echo  Url::base();     // /project/web

    ehco  Url:base(true);   //  http://localhost/project/web

    echo  Url::to();          //  为空的时候是返回当前的url,包括参数

    echo Url::to(数组)   //等价于Url::toRoute(数组)

    echo  Url::to()

    //跳转

    return $this->redirect(['foot-bar/user-info']);

    //路由重写

    开启配置文件web.php里的

    /*
    'urlManager' => [
    'enablePrettyUrl' => true, //去掉 ?r=
    'showScriptName' => false, // 去掉index.php 需要apache开启rewrite模块,并添加.htaccess
    'rules' => [
    ],
    ],
    */
    并 apache开启rewrite模块,并添加.htaccess

    小点:

    ajax请求的时候用 renderPartial (不加载头部尾部),平常用render就行

  • 相关阅读:
    .NET面试题解析(07)-多线程编程与线程同步
    .NET面试题解析(06)-GC与内存管理
    .NET面试题解析(05)-常量、字段、属性、特性与委托
    .NET面试题解析(04)-类型、方法与继承
    .NET面试题解析(03)-string与字符串操作
    .NET面试题解析(02)-拆箱与装箱
    .NET面试题解析(01)-值类型与引用类型
    StackExchange.Redis使用配置
    X--名称空间详解
    深入浅出话资源
  • 原文地址:https://www.cnblogs.com/hfdp/p/5749538.html
Copyright © 2020-2023  润新知