将 Doctrine 与 REST API 结合使用
Use Doctrine with REST APIs
是否可以使用 REST API 作为 Doctrine 数据库?
关于 http://doctrine-orm.readthedocs.org/projects/doctrine-dbal/en/latest/reference/configuration.html 上的配置,我可以更改 "driver" 属性。
但是在允许的驱动程序列表中没有人使用 REST API。
我想做的是:
<?php
$config = new \Doctrine\DBAL\Configuration();
//..
$connectionParams = array(
'dbname' => 'my_rest_api',
'user' => 'user',
'password' => 'secret',
'host' => 'localhost:3000',
'driver' => 'rest',
);
$conn = \Doctrine\DBAL\DriverManager::getConnection($connectionParams, $config);
$entityManager = EntityManager::create($conn, $config);
// Sends a GET request to localhost:3000/myentity/1 and maps it properly to my configured entity
$entity = $entityManager->find("MyNamespace\Entity\MyEntity", 1);
// Sends a POST request to localhost:3000/myentity
$entity = new MyEntity();
$entityManager->persist($entity);
$entityManager->flush();
// and so on
感谢您的回答!!
DoctrineRestDriver 正是您想要的!
https://github.com/CircleOfNice/DoctrineRestDriver
玩得开心!
是否可以使用 REST API 作为 Doctrine 数据库?
关于 http://doctrine-orm.readthedocs.org/projects/doctrine-dbal/en/latest/reference/configuration.html 上的配置,我可以更改 "driver" 属性。
但是在允许的驱动程序列表中没有人使用 REST API。
我想做的是:
<?php
$config = new \Doctrine\DBAL\Configuration();
//..
$connectionParams = array(
'dbname' => 'my_rest_api',
'user' => 'user',
'password' => 'secret',
'host' => 'localhost:3000',
'driver' => 'rest',
);
$conn = \Doctrine\DBAL\DriverManager::getConnection($connectionParams, $config);
$entityManager = EntityManager::create($conn, $config);
// Sends a GET request to localhost:3000/myentity/1 and maps it properly to my configured entity
$entity = $entityManager->find("MyNamespace\Entity\MyEntity", 1);
// Sends a POST request to localhost:3000/myentity
$entity = new MyEntity();
$entityManager->persist($entity);
$entityManager->flush();
// and so on
感谢您的回答!!
DoctrineRestDriver 正是您想要的!
https://github.com/CircleOfNice/DoctrineRestDriver
玩得开心!