Alla ricerca di ORM automatico con interfaccia REST

4

Ho questo desiderio che Google finora non è stato in grado di soddisfare. Voglio trovare un pacchetto (idealmente in PHP, perché conosco PHP, ma suppongo che non sia un requisito difficile) che punti a un database, costruisca un ORM basato su ciò che trova lì e esponga un'interfaccia REST sul web.

Tutto quello che ho trovato nelle mie ricerche richiede un po 'di codice - come, vuole che tu costruisca le classi per questo, ma gestirà il routing della richiesta REST. O fa bene il database e le relazioni, ma devi costruire i tuoi metodi per tutte le azioni CRUD.

È stupido. REST è ben definito. Se volessi re-inventare la ruota, potrei totalmente, ma non voglio. Non c'è qualcuno che ha creato un pacchetto di servizi web RESTing super-semplice e automatico?

    
posta Dan Ray 03.04.2012 - 15:02
fonte

4 risposte

2

Come dici tu PHP non è un requisito difficile, spero che sia corretto puntare a una soluzione Python: Django + django-tastypie farà più o meno quello che stai chiedendo.

Puoi autogenerare le classi di ORG di Django da un database esistente e django-tastypie usa le impostazioni predefinite per esporre ogni modello usando REST, richiedendo solo un poche righe di dichiarazione per ogni classe ORM che si desidera esporre.

    
risposta data 22.11.2012 - 16:01
fonte
0

Penso che la risposta alla tua domanda potrebbe essere "no". Sono stato in agguato intorno alle trincee di PHP per circa sei anni e, ad oggi, non sono incappato nel tipo di cosa che stai cercando. Tuttavia, sembra una cosa abbastanza semplice da costruire, quindi è un po 'un mistero perché nessuno lo abbia ancora fatto. Zend Framework, RedBean e tutta una serie di altri framework con la scoperta automatica della tabella del database dovrebbero fornire una buona base per tale progetto.

    
risposta data 22.05.2012 - 02:41
fonte
0

L'idea non è giusta. La memoria del tuo database non è direttamente correlata all'output. Ad esempio, 2 modelli potrebbero utilizzare la stessa tabella senza alcun problema. Quindi mettere in relazione le tabelle direttamente con l'output non mi sembra giusto.

Ad esempio, ti manca anche la parte dei campi virtuali. Supponi di avere una fattura totale. Il modello lo allega al record in modo che non lo trovi quando leggi il database. Ecco perché ci sono livelli nelle applicazioni.

Una migliore idea è usare un generatore di codice per creare le classi. Ho notato che CakePHP era già menzionato, è in grado di farlo con impalcature e infornate. Forse questo ti farà risparmiare un sacco di tempo.

    
risposta data 22.11.2012 - 15:04
fonte
0

La cosa più vicina in PHP (che io sappia) a ciò che descriveresti sarebbe l'uso di CAKE. Personalmente non mi piace questo framework quindi non sono sicuramente un esperto ma potresti costruire un modello usando inforna e aggiungi la funzionalità CRUD con bake o usando lo scaffolding, quindi non ci sarà alcuna codifica.

E poi basta configurare REST attraverso il routing. Il problema principale sarebbe la manutenibilità di tale soluzione.

    
risposta data 22.11.2012 - 13:32
fonte

Leggi altre domande sui tag