2013-06-06 3 views
28

C'è qualche strumento o framework in Node.js che ti permette di creare una tabella nel DB e generare API RESTful automaticamente come Rails?C'è qualcosa in Node.js come lo scaffold in Rails?

Grazie mille!

+0

controlla https://github.com/mcavage/node-restify e l'eccellente http://expressjs.com/ per l'api. Non so però il lato db. Lo faccio solo manualmente, ma mi piacerebbe un bel strumento automatico per farlo per me! – Andbdrew

risposta

27

Immagino che dipende da cosa si vuole:

  • Rails generazione di codice di stile (dove si genera il codice per voi che è possibile modificare)
  • stile Django magia semi dove le forme di amministrazione possono essere derivate dal campi nella tabella/schema del documento.
  • vuoi dire la generazione di un'API per questi campi nel database, ala quale grape fa per Ruby - fare un po 'di configurazione e conversione dei dati a JSON e la trasmissione di nuovo sopra il filo è preso cura di per voi
  • Hai un nuovo progetto e siete alla ricerca di un quadro con una di queste tre caratteristiche

per le prime tre opzioni ci sono alcuni correlate, al fine domande su questo già:

ci sono alcune risposte impressionante in questo insieme di link, tra cui:

Per l'ultima opzione - uno sviluppo web rapido Node.js quadro supponente che fornisce un buon supporto API, ci sono alcune opzioni:

  • @ risposta di abject_error, in questa domanda, su Sails
  • Geddy < - fornisce automaticamente le versioni .json dei dati specificati dal controller (in base alla richiesta che utilizza questi dati per visualizzare HTML o crea una rappresentazione JSON)
  • C'è una bella presentazione su How to quickly make REST APIs with CompoundJS, quindi CompoundJs può adattarsi ai vostri gusti.

inizialmente ho lasciato questi fuori come ho ipotizzato si può avere un progetto esistente, o non ha voluto utilizzare un quadro supponente, ma li ha aggiunto a causa perché no.

+0

RyanWilcox, grazie mille per la tua risposta !!! Leggerò attraverso quelle domande e documentazioni. – user2440712

15

SailsJS (https://github.com/balderdashy/sails) è esattamente quello che stai cercando. Utilizza il modulo Waterline per simulare ActiveRecord. Basta definire una risorsa e creerà automaticamente endpoint JSON per tutte le azioni RESTful e inoltre renderà gli endpoint compatibili con le connessioni Socket.io.

È costruito su Express, quindi è possibile utilizzare qualsiasi middleware Connect per estenderlo. AFAIK è il miglior NodeJS framework per la costruzione di backend API.

Definire una nuova risorsa è semplice come sails generate user. Questo creerà il modello appropriato e i file del controller, che potrai quindi modificare.

Ricordare che Sails è stato creato tenendo a mente gli archivi di dati senza schema, quindi il supporto principale è per MongoDB, non per MySQL. Non sono sicuro di quanto bene (se non del caso) supporta i database SQL.

+2

abject_error, grazie mille! – user2440712

+0

solo per aggiungere si potrebbe voler vedere partial.js – Xdrone

+3

Sails (Waterline) supporta i database relazionali (Postgres, MySQL) al 100% con i loro adattatori appropriati. –