目前我有一个在没有任何框架的情况下运行的PHP应用程序。
出于几个原因,我想使用 CakePHP 框架重建该应用程序。但是,此应用程序具有不符合Cake惯例的旧数据库方案(甚至不是英文)。
我想逐个重建此应用程序,并继续对尚未迁移的部分使用旧应用程序,因此我无法进行任何真正的架构更改。
是否可以在新方案和旧方案之间创建某种代理路由?因此,这在 Cake 中不可能像我想要的那样工作(例如模型"用户"中的字段"user_name"),但在后台仍然使用旧的数据库方案(例如表"gebruikers"中的"naam")。
CakePHP 2.X
中没有您想要的Model
行为的代理。
不过,您可以通过添加一些模型设置来遵循最重要的 CakePHP 约定来构建您的应用程序:
- 您可以使用
$useTable
属性 (docs) 指定每个模型使用的表 - 如果
primaryKey
不等于id
,则可以指定 (文档) - 您可以使用自定义
foreignKey
来设置两个模型之间的关系(在此处查看此答案,其中包含一个很好的解释)
这应该可以帮助您入门,并将表字段名称更改留待以后使用。
模型属性和关联的官方文档