如何更改Yii2中的默认数据库表名?

时间:2014-06-16 23:09:36

标签: php mysql yii2

我是Yii2的新手,我试图用高级模板玩一些。我的问题是当我尝试注册或登录默认页面时出现错误,而且我不知道在哪里注册正确的表名。

**Caused by: PDOException**
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'xxx.user' doesn't exist
in xxx\...\yii2\advanced\vendor\yiisoft\yii2\db\Command.php at line 398

我已经使用Yii创建了模型和控制器,据我所知,它一切正常。我的问题是:如何改变用户"表名到我的数据库中的那个?我已经在ActiveRecord扩展类上更改了tableName()方法。

class Usuario extends \yii\db\ActiveRecord
{
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'usuario';
    }
...

1 个答案:

答案 0 :(得分:6)

Yii2有一个内置的用户模型,可以扩展活动记录并实现身份界面。在那里设置新的表名。

共同\ models \ User.php

 class User extends ActiveRecord implements IdentityInterface
  {

      public static function tableName()
      {
         return 'new_tbl_name';
      }
  ........