ThinkPHP 模型(Model)命名规范
2012-05-16 10:36
369 查看
模型命名规范
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
当然如果不定义后缀,也可以单独每个模型类定义 tableName 属性,这个视乎实际情况来采取何种策略。
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
当然如果不定义后缀,也可以单独每个模型类定义 tableName 属性,这个视乎实际情况来采取何种策略。
相关文章推荐
- ThinkPHP 模型(Model)命名规范
- ThinkPHP 模型(Model)命名规范
- thinkphp的model模型的设计经验总结
- ThinkPHP命名规范
- ThinkPHP教程_PHP框架之ThinkPHP(六)【实例化模型、模型命名和获取字段】
- thinkphp model 命名注意
- Thinkphp3.2.3 模型文件名和类名命名规则
- BW模型权限设置与命名规范
- Thinkphp增加操作(Controller到模型Model的逻辑)
- Thinkphp命名规范
- ThinkPHP框架----控制器调用模型里的方法,一直报错——Think\Model:..方法不存在!
- thinkphp3.2【model模型】
- thinkphp实例化模型Model
- thinkphp的命名规范
- 【ThinkPHP学习】模型Model的自定义
- thinkphp框架函数switchModel(调用动态模型时使用)
- 模型命名规范
- thinkphp的model模型的设计经验总结
- Thinkphp命名规范
- ThinkPHP命名规范