## 連接名、表名和主鍵字段名
#### 連接名
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"