首页 > Yii2.0高级模板安装小问题

Yii2.0高级模板安装小问题

早上利用Composer安装了Yii2.0的高级版,全部配置完成之后发现登录处出错,报错显示没有对应的用户表,然后对照着Github上的官方文档又看了一遍,发现第三步没有执行,不知道这一步怎么做,求指导。


基于basic template的猜测,你试试到项目目录下,执行这个:

./yii migrate

第三步是执行数据库迁移操作, 关于迁移相关的 文档

  1. 你先建立好数据库

  2. 在common/config/main-local.php中配置数据信息

  3. yii是一个php脚本, 你可以运行 php yii migrate
    会执行 console/migrations 目录下面的迁移脚本, 刚开始这个迁移是建立了一张用户表
    迁移脚本内容如下

<?php

use yii\db\Schema;
use yii\db\Migration;

class m130524_201442_init extends Migration
{
    public function up()
    {
        $tableOptions = null;
        if ($this->db->driverName === 'mysql') {
            // http://stackoverflow.com/questions/766809/whats-the-difference-between-utf8-general-ci-and-utf8-unicode-ci
            $tableOptions = 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB';
        }

        $this->createTable('{{%user}}', [
            'id' => Schema::TYPE_PK,
            'username' => Schema::TYPE_STRING . ' NOT NULL',
            'auth_key' => Schema::TYPE_STRING . '(32) NOT NULL',
            'password_hash' => Schema::TYPE_STRING . ' NOT NULL',
            'password_reset_token' => Schema::TYPE_STRING,
            'email' => Schema::TYPE_STRING . ' NOT NULL',

            'status' => Schema::TYPE_SMALLINT . ' NOT NULL DEFAULT 10',
            'created_at' => Schema::TYPE_INTEGER . ' NOT NULL',
            'updated_at' => Schema::TYPE_INTEGER . ' NOT NULL',
        ], $tableOptions);
    }

    public function down()
    {
        $this->dropTable('{{%user}}');
    }
}

打开cmd,定位到项目目录下,键入

yii migrate

Yii高级模板Migrate


如果是重新安装YII2的话 可以直接把用户表拷贝生成就可以了。第3步的意思主要是配置数据库表等

【热门文章】
【热门文章】