ThinkPHP 模型(Model)命名规范
2012-02-29 23:10
381 查看
http://www.5idev.com/p-thinkphp_model_naming.shtml
模型命名规范
ThinkPHP 对数据库的表名和模型类的命名遵循一定的规范。首先数据库的表名和字段全部采用小写形式,模型类的命名规则是除去表前缀的数据表名称,并且首字母大写,然后加上模型类的后缀定义。一些例子如下:表名(不含前缀) | 模型名称(类名) | 文件名 | 例子 |
---|---|---|---|
user | UserModel | UserModel.class.php | class UserModel extends Model{} |
user_group | UserGroupModel | UserGroupModel.class.php | class UserGroupModel extends Model{} |
当项目中的表命名规则和 ThinkPHP 中的约定不符时(常常会有这种情况),ThinkPHP 允许对 Model 类的 tableName 和 trueTableName 属性进行设置以达到兼容的目的。
tableName 属性
当表前缀和系统设置的前缀(DB_PREFIX)一致而表名和模型名称不一致时,可设置此属性,例如表名称为 users ,而模型名称为 UserModel ,那么需要在模型类设置:class UserModel extends Model{ protected $tableName = 'users'; }
trueTableName 属性
如果表的前缀跟系统设定的不一致(表名和模型名可能一致)时,需要设定模型的 trueTableName 属性:class UserModel extends Model{ protected $trueTableName = 'my_user'; }
注意 trueTableName 值为完整的表名(包括前缀)。
dbName 属性
dbName 属性定义模型当前对应的数据库名称,只有当前的模型类对应的数据库名称和配置文件不同的时候才需要定义:protected $dbName = 'cdb';
表后缀
当设定了表后缀时,系统会自动识别表后缀,那么对应的定义如下:表名(不含前缀) | 后缀 | 模型名称(类名) | 文件名 |
---|---|---|---|
log001 | 001 | LogModel | LogModel.class.php |
相关文章推荐
- ThinkPHP 模型(Model)命名规范
- ThinkPHP 模型(Model)命名规范
- thinkphp模型没继承model报的错
- thinkphp的model模型的设计经验总结
- ThinkPHP 数据库操作之数据表模型和基础模型 ( Model )
- thinkphp框架命名规范
- YII Framework学习教程-YII的Model-开发规范-路径别名-命名空间-2011-11-22
- yii2 model 模型代码规范
- ThinkPHP 命名规范
- ThinkPHP--数据库连接及model模型定义使用
- Hibernate学习笔记—模型类(model)的规范
- ThinkPHP模型(Model)中双表查询注意点
- ThinkPHP5的命名规范
- [ThinkPHP5.0] 1命名规范
- YII Framework学习教程-YII的Model-开发规范-路径别名-命名空间
- thinkphp 命名规范
- 从" ThinkPHP 开发规范 "看 PHP 的命名规范和开发建议
- thinkphp 命名规范
- thinkphp的model模型的设计经验总结
- Thinkphp - 实例化模型(Model)