2009-06-22 10 views
6

Estoy planeando escribir un nuevo código de UI y muchas personas sugirieron usar RoR. Pero por lo que he leído sobre RoR hasta ahora, parece ser casi obligatorio tener una base de datos para almacenar los datos de back-end. En mi caso, no tengo acceso a una base de datos y todos mis objetos de datos están disponibles a través de servicios web (algunos servicios REST y SOAP).¿Puedo usar Rails sin una base de datos y solo estoy llamando a servicios web?

Creo que tengo que usar el controlador para hablar directamente con los servicios en este caso, pero sigue siendo una buena idea usar RoR sin la capa de modelo (ActiveRecord).

¿Hay otros marcos más adecuados para este tipo de enfoque (puedo usar cualquier cosa en Java o Ruby, no tenemos ningún código de PHP o Python).

Respuesta

3

Los rieles funcionarán bien para esto; Admite explícitamente la ejecución sin ActiveRecord. Ver el comentario en el archivo predeterminado environment.rb:

# Skip frameworks you're not going to use. To use Rails without a database 
# you must remove the Active Record framework. 
# config.frameworks -= [ :active_record, :active_resource, :action_mailer ] 

Su archivo database.yml será ignorada si no se carga ActiveRecord; todos sus modelos pueden heredar de ActiveResource :: Base y funcionarán perfectamente.

+0

¿Puedo tener las validaciones configuradas de esta manera? – Arvind

+0

¿No estarían al otro lado de la llamada de servicio? Y si no lo son, ¿no podrías anular el método de guardar? –

0

Si los servicios web son todo lo que hace, entonces recomendaría sinatra. Sinatra hace que las aplicaciones que funcionan en servicios web sean sencillas. Si desea un enfoque similar en el cliente con URL de fragmento, consulte sammy. Ambos son geniales para crear aplicaciones web que tienen fuentes de datos no tradicionales.

Cuestiones relacionadas