Trwałe jednostki używające API REST
Dla projektu w Symfony2 muszę być w stanie utrzymywać / pobierać jednostki za pomocą zewnętrznego API RESTful zamiast bazy danych. Ponieważ Doctrine odwzorowuje jednostkę na wiersz tabeli bazy danych, pomyślałem, że powinno być łatwo utworzyć odwzorowanie z encji na zewnętrzny interfejs API. Jednak jest to dla mnie nowe i nie mogę znaleźć żadnych opisów / samouczków na ten temat. (być może brakuje mi odpowiednich słów dla mojego Google-fu)
Miałem nadzieję, że istnieje rozwiązanie podobne do Doctrine. Wolałbym nie używać czegoś opartego na wzorcu ActiveRecord, ponieważ chcę, aby logika persystencji była oddzielona od Entities. Jednostka nie powinna wiedzieć, jak się utrzymuje.
Chcę być w stanie zrobić coś podobnego:
$entity = new Entity();
$em = $this->getREST()->getManager(); // get REST Entity Manager
$em->persist($entity); // save the entity using a POST request
$em->flush();
i to:
$em = $this->getREST()->getManager(); // get REST Entity Manager
// retrieve the entity using a GET request
$entity = $em->getRepository('AcmeDemoBundle:Entity')->find($id);
i to:
$em = $this->getREST()->getManager(); // get REST Entity Manager
// retrieve all entities using a GET request
$entities = $em->getRepository('AcmeDemoBundle:Entity')->findAll();
Innymi słowy, byłoby miło, gdyby składnia była prawie identyczna z składnią Doctrine.
Ponadto chciałbym skonfigurować odwzorowanie w pliku zewnętrznym (na przykład YAML) zamiast adnotacji w encji. (Jak już powiedziałem, podmioty nie powinny wiedzieć, jak się utrzymują)
Forgottenbas wspomniałem już o kilku rozwiązaniach, ale nie spełniają one całkowicie moich wymagań i spodziewam się, że będzie więcej rozwiązań, ponieważ jestem pewien, że nie jestem pierwszym, który musi rozwiązać ten problem.
Czy ktoś może wskazać mi właściwy kierunek?