Apigility
DB-Connected服务允许[...]指定数据库适配器[...]
(参见文档中的REST Service Tutorial)。
“DB-Connected”服务提供Database Settings
,可以分配适配器。每个适配器“知道”,使用哪些凭据以及连接哪个数据库。
我创建了“代码连接”REST服务,并希望版本V1
和V2
使用单独的数据库。如何实现这一目标?
答案 0 :(得分:0)
为了使用多个DB适配器,只需要
global.php
为通用设置(如driver
和local.php
创建凭据)中创建适当的配置块 - 可以手动或通过Apugility GUI完成( Dashboard -> Database Adapters
)<强> global.php 强>
return array(
'db' => array(
'adapters' => array(
'DB\\myapi_v1' => array(
'driver' => 'Pdo',
'driver_options' => array(
1002 => 'SET NAMES \'UTF8\'',
),
'pdodriver' => 'mysql',
),
'DB\\myapi_v2' => array(
...
),
),
),
...
);
<强> local.php 强>
return array(
'db' => array(
'adapters' => array(
'DB\\myproject_v1' => array(
'username' => 'root',
'password' => 'pwd',
'dbname' => 'myproject_v1',
'host' => 'localhost',
),
'DB\\myproject_v2' => array(
...
),
),
),
...
);
Zend\Db\Adapter\Adapter
,例如使用ZfcBase\Mapper
(此处是应用程序中的示例,其中适配器在工厂中为service
类设置; service
在此处是controller
/ {之间的层{1}}和resource
):<强> [myproject的] /module/Portfolio/src/Portfolio/V1/Rest/Image/ImageServiceFactory.php 强>
DB mapper