zoukankan      html  css  js  c++  java
  • Yii 配置文件

    主配置文件是main.php:

     <?php
     
     // uncomment the following to define a path alias
     // Yii::setPathOfAlias('local','path/to/local-folder');
     
     // This is the main Web application configuration. Any writable
     // CWebApplication properties can be configured here.
     return array(
         'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
         'name'=>'My Web Application',
     
         // preloading 'log' component
         'preload'=>array('log'),
     
         // autoloading model and component classes
         'import'=>array(
             'application.models.*',
             'application.components.*',
         ),
     
         //default controller
         'defaultController'=>'test',
         
         //controller map
         /* 'controllerMap'=>array(
             'index'=>'application.controllers.TestController',    
         ), */    
             
         'modules'=>array(
             // uncomment the following to enable the Gii tool
             
             'gii'=>array(
                 'class'=>'system.gii.GiiModule',
                 'password'=>'mr.coke',
                  // If removed, Gii defaults to localhost only. Edit carefully to taste.
                 'ipFilters'=>array('127.0.0.1','::1'),
             ),
             
         ),
     
         // application components
         'components'=>array(    
             'user'=>array(
                 // enable cookie-based authentication
                 'allowAutoLogin'=>true,
             ),
             // uncomment the following to enable URLs in path-format
             
             'urlManager'=>array(
                 'urlFormat'=>'path',
                 'rules'=>array(
                     '<controller:w+>/<id:d+>'=>'<controller>/view',
                     '<controller:w+>/<action:w+>/<id:d+>'=>'<controller>/<action>',
                     '<controller:w+>/<action:w+>'=>'<controller>/<action>',
                     'index'=>'test/index',
                     'test'=>'test/test',
                 ),
             ),
             
             /* 'db'=>array(
                 'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',
             ), */
             // uncomment the following to use a MySQL database
             
             'db'=>array(
                 'connectionString' => 'mysql:host=localhost;dbname=user.login.yii',
                 'emulatePrepare' => true,
                 'username' => 'root',
                 'password' => 'root',
                 'charset' => 'utf8',
                 'tablePrefix' =>'tbl_',
                 'enableProfiling'=>YII_DEBUG,
                 'enableParamLogging'=>YII_DEBUG,
             ),
             
             'errorHandler'=>array(
                 // use 'site/error' action to display errors
                 'errorAction'=>'site/error',
             ),
             'log'=>array(
                 'class'=>'CLogRouter',
                 'routes'=>array(
                     array(
                         'class'=>'CFileLogRoute',
                         'levels'=>'error, warning',
                     ),
                     // uncomment the following to show log messages on web pages
                     
                     array(
                         'class'=>'CWebLogRoute',
                         'levels'=>'error, warning,trace',
                         'categories'=>'system.db.*',
                     ),
                     
                 ),
             ),
         ),
     
         // application-level parameters that can be accessed
         // using Yii::app()->params['paramName']
         'params'=>array(
             // this is used in contact page
             'adminEmail'=>'webmaster@example.com',
         ),
     );

    关于urlmanager:

    User-friendly URLs 

    When path is used as the URL format, we can specify some URL rules to make our URLs even more user-friendly. For example, we can generate a URL as short as /post/100, instead of the lengthy/index.php/post/read/id/100. URL rules are used by CUrlManager for both URL creation and parsing purposes.

        ......
        'components'=>array(
            ......
            'urlManager'=>array(
                'urlFormat'=>'path',
                'rules'=>array(
                    'pattern1'=>'route1',
                    'pattern2'=>'route2',
                    'pattern3'=>'route3',
                ),
            ),
        ),
    );

    The rules are specified as an array of pattern-route pairs, each corresponding to a single rule. The pattern of a rule is a string used to match the path info part of URLs. And the route of a rule should refer to a valid controller route.

    Besides the above pattern-route format, a rule may also be specified with customized options, like the following:

    'pattern1'=>array('route1', 'urlSuffix'=>'.xml', 'caseSensitive'=>false)

    Starting from version 1.1.7, the following format may also be used (that is, the pattern is specified as an array element), which allows specifying several rules with the same pattern:

    array('route1', 'pattern'=>'pattern1', 'urlSuffix'=>'.xml', 'caseSensitive'=>false)

    3. Using Named Parameters 使用命名的参数

    A rule can be associated with a few GET parameters. These GET parameters appear in the rule's pattern as special tokens in the following format:

    <ParamName:ParamPattern>
    

    where ParamName specifies the name of a GET parameter, and the optional ParamPattern specifies the regular expression that should be used to match the value of the GET parameter. In case when ParamPatternis omitted, it means the parameter should match any characters except the slash /. When creating a URL, these parameter tokens will be replaced with the corresponding parameter values; when parsing a URL, the corresponding GET parameters will be populated with the parsed results.

    Let's use some examples to explain how URL rules work. We assume that our rule set consists of three rules:

    array(
        'posts'=>'post/list',
        'post/<id:d+>'=>'post/read',
        'post/<year:d{4}>/<title>'=>'post/read',
    )
    • Calling $this->createUrl('post/list') generates /index.php/posts. The first rule is applied.

    • Calling $this->createUrl('post/read',array('id'=>100)) generates /index.php/post/100. The second rule is applied.

    • Calling $this->createUrl('post/read',array('year'=>2008,'title'=>'a sample post'))generates /index.php/post/2008/a%20sample%20post. The third rule is applied.

    • Calling $this->createUrl('post/read') generates /index.php/post/read. None of the rules is applied.

    更多:http://www.yiiframework.com/doc/guide/1.1/en/topics.url
    http://www.cnblogs.com/mrcoke/articles/2407759.html
  • 相关阅读:
    CSS居中布局总结
    Jquery的普通事件和on的委托事件
    sass基础用法
    JS中常遇到的浏览器兼容问题和解决方法
    KVC
    关键字 self
    常见的出现内存循环引用的场景有哪些?
    XCODE中的蓝色文件夹与黄色文件夹
    oc 关键字
    uiwebview 兼容性
  • 原文地址:https://www.cnblogs.com/youxin/p/3870547.html
Copyright © 2011-2022 走看看