表名具有下划线时的型号名称

时间:2013-10-29 07:01:57

标签: php cakephp

我有一张桌子activity_logs 我应该给出型号名称和型号文件名称?

我已将模型文件创建为activityLog.php,将模型类名称创建为ActivityLog

但我无法检索数据。

2 个答案:

答案 0 :(得分:5)

在蛋糕中,php表名是复数,模型名是单数。具有下划线的表名称将转换为用于命名模型的驼峰案例。

例如,user_levels表将具有名为UserLevel的模型:

UserLevel => user_levels

即使您没有创建模型,如果您按照上述命名约定遵循表名,Cake也会让您使用它并为您快速创建模型。

如果Cake“忽略”你的模型,这意味着它正在构建另一个模型,因为你没有为你真正想要的模型使用正确的名称

查看debug = 2中生成的SQL查询有助于

答案 1 :(得分:2)

对于cakephp 2.0及以上版本,命名约定如下:

表:

  

与CakePHP模型相对应的表名称是复数并加以强调。

加入表格:

  

连接表,用于hasAndBelongsToMany(HABTM)之间的关系   模型应以它们将加入的模型表命名   字母顺序(apples_zebras而不是zebras_apples)。

控制器:

  

控制器类名是复数,CamelCased,以Controller结尾。   PeopleController和LatestArticlesController都是例子   传统的控制器名称。

型号:

  

模型类名是单数和CamelCased。 Person,BigPerson和ReallyBigPerson都是传统模型名称的例子。

参考:http://book.cakephp.org/2.0/en/getting-started/cakephp-conventions.html

对于较低版本的命名约定,您可以参考此博客:http://www.dereuromark.de/2010/10/08/complete-cakephp-naming-conventions/