我总是设置表前缀 - 对于这个帖子,我可以说我的前缀是abc_
。
所以在common\config\main-local.php
。我有:
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=database',
'username' => 'user',
'password' => 'pwd',
'charset' => 'utf8',
'tablePrefix' => 'abc_',
],
...
我曾在Yii1上工作并使用gii生成模型。
在此版本中,它生成了如下文件:table.php
。
现在我与Yii2合作并了解其中的差异:
gii
生成abc_table.php
等文件。是的 - 我选中了“使用表格前缀”。
这不好,因为前缀应该是透明的。 可以请任何人告诉我我做错了什么?
答案 0 :(得分:6)
您可以将模型类名称AbcTest
更改为Test
。并检查Use Table Prefix
。 Gii
生成正确的模型:
class Test extends \yii\db\ActiveRecord
{
/**
* @inheritdoc
*/
public static function tableName()
{
return '{{%test}}';
}
...
}
如果您选中tableName
,请在'{{%test}}'
方法返回Use Table Prefix
。如果您未在此方法中选中Use Table Prefix
,请返回'abc_test'
。