## 连接名、表名和主键字段名
#### 连接名
DbModel默认的连接名是"default"。
可以在子类中覆盖$dbName实例变量来定义模型要连接的连接名。
DbModel从配置文件中加载名为$dbName的配置数组来获取连接指定数据库的必要参数,形如:
~~~
// 主数据库设置
$_config['database']['default'] = [
'driver' =>'mysql',
'host' =>'localhost',
'port'=>'3306',
'user' =>'root',
'passwd' =>'',
'dbname' =>'crm',
'charset'=>'utf8'
];
// 平台数据库
$_config['database']['platform'] = [
'driver' =>'mysql',
'host' =>'localhost',
'port'=>'3306',
'user' =>'root',
'passwd' =>'',
'dbname' =>'platform',
'charset'=>'utf8'
];
~~~
如果子类未指定$dbName,则默认使用名为“default”的配置名。
* * * * *
#### 表名
同样的,DbModel使用子类中覆盖的$table作为模型关联的表名。
~~~
public $table = 'user';
~~~
如果子类中未指定表名,则DbModel会根据子类的类名猜测表名,其规则是:
~~~
子类名:UserModel => 表名:user
子类名:User => 表名:user
子类名:UserLogModel => 表名:user_log
子类名:UserLog => 表名:user_log
~~~
我们推荐子类命名规则为“首字母大写的驼峰式命名方式,推荐以表名+Model形式”,例如:user_log表的模型名为:UserLogModel
* * * * *
#### 主键字段名
可以在子类中通过覆盖$primkey来指定模型表的主键字段。
~~~
public $primkey = 'id';
~~~
如果子类中未指定$primkey,则默认主键字段名为"id"