yii2.0-advanced 高级版项目搭建(二)

上一篇:yii2.0-advanced 高级版项目搭建(一)


视频教程:Yii2.0高级版项目搭建(二)


通过上一篇教程的学习,我们已经初步搭建好了yii2.0高级版的项目,接下来就要看下如何配置一些基础的配置

数据库配置:

在本地新建一个数据库 demo

sql.png

上篇教程中提到有common backend frontend三个文件夹,这里要说一下environments这个文件夹,顾名思义,environments就是环境配置(dev:开发环境 prod:生产环境),对于高级版的environments详细配置,我会在另外一篇教程中详细说明。

好了,回到正题,打开/environments/dev/common/config/main-local.php 修改数据库配置

    'components' => [
    ...
        'db' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host=localhost;dbname=demo',
            'username' => 'root',
            'password' => '',
            'charset' => 'utf8',
        ],
    ...
    ],

注:username 和 password 填入对应数据库账号密码

执行init或在安装目录中运行init.bat,选择 0 开发模式进行安装(init运行失败请查看yii2.0-advanced 高级版项目搭建(一)项目搭建6)


创建user用户表

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增ID',
  `username` varchar(255) NOT NULL COMMENT '用户名',
  `auth_key` varchar(32) NOT NULL COMMENT '自动登录key',
  `password_hash` varchar(255) NOT NULL COMMENT '加密密码',
  `password_reset_token` varchar(255) DEFAULT NULL COMMENT '重置密码token',
  `email` varchar(255) NOT NULL COMMENT '邮箱',
  `role` smallint(6) NOT NULL DEFAULT '10' COMMENT '角色等级',
  `status` smallint(6) NOT NULL DEFAULT '10' COMMENT '状态',
  `created_at` int(11) NOT NULL COMMENT '创建时间',
  `updated_at` int(11) NOT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='用户表';

好了,数据库配置基本完成了,那么现在来验证一下。

访问 http://www.demo.com 点击右上角sign up 注册一个账户,进行登录,成功登录后会在右上角显示用户名

login.png




语言包配置:

为了代码更加规范,配置一个项目语言包是必不可少的事,那么下面我们就开始来给我们的网站配置中文包


语言包的配置可以根据开发需求,前台(frontend)和后台(backend)分开配置

第一步:

创建目录(frontend为例),如下图在/frontend/messages/zh-CN(这里的“CN”最好大写,Windows无影响,linux区分大小写),创建两个语言包文件 common.php和power.php

messages.png

第二步:添加语言包配置/frontend/config/main.php

return [
    'language'=>'zh-CN',               //这个配置别漏了,选择中文语言包
      
      ...
               
     'components' => [
        
        ...
              
        'i18n' => [
            'translations' => [
                'common' => [
                    'class' => 'yii\i18n\PhpMessageSource',
                    //'basePath' => '/messages',
                    'fileMap' => [
                        'common' => 'common.php',
                    ],
                ],
                'power' => [
                    'class' => 'yii\i18n\PhpMessageSource',
                    //'basePath' => '/messages',
                    'fileMap' => [
                        'power' => 'power.php',
                    ],
                ],
            ],
        ],
      ]
]

添加language和i18n配置

那么好了,语言包的配置基本是完成了,接下来我们验证一下

在common.php中添加数据,格式如下

peizhi.png

输出:在/frontend/views/layouts/main.php 把网站名My Company改成Yii::t('common','Yii China');

main.png

打开首页查看效果

index.png


下一篇:yii2.0-advanced 高级版项目搭建(三)