来自不同数据源的具有相同表名的CakePHP 3烘焙模型

时间:2018-10-29 07:11:15

标签: cakephp cakephp-3.x cakephp-bake

我正在使用CakePHP 3

我有不同的来源要使用,每个来源都有不同的users表。

简而言之,我正在创建一个主面板来管理所有其他应用程序中的用户。

当我从其他连接烘烤users桌子时

bin/cake bake model users -c my_con

它要求覆盖早期的烤制users模型。

如何从不同来源烘焙具有相同名称的表?也许在其他命名空间下。

并且不可能获得代表哪个列的索引。

如何使用表的列名映射数据?

1 个答案:

答案 0 :(得分:3)

您可以使用其他模型名称,并通过--table选项显式传递数据库名称,例如:

bin/cake bake model UsersAlias --table users -c my_con

不能直接使用不同的名称空间,对于模型/表,Bake仅支持将文件创建到插件中,这将是一个不同的名称空间,但是您当然需要为每个源单独使用一个插件,这可能是一个略高于顶部。

并且fetchAll()有一个参数,可将提取类型接受为字符串'assoc''obj''num'(默认值),也可以作为{{ 3}}:

$result = $query->fetchAll(\Cake\Database\Statement\PDOStatement::FETCH_TYPE_ASSOC);