2010-09-23 14 views
6

Esta es una pregunta de alto nivel sobre los frameworks web, que como desarrollador de aplicaciones de escritorio, no conozco demasiado.Conectando Raphael con Rails

Estoy planeando crear una aplicación web que visualice algunos datos almacenados en una base de datos. Planeo usar Rails para la consulta del usuario. Para la visualización, la biblioteca JS Raphael se ve bien. ¿Sería una tarea considerable tratar de conectar Rails con esta biblioteca?

Cualquier recomendación para sustitutos de estos 2 son bienvenidos.

Respuesta

9

No hay mucho que hacer para conectar Rails y Raphaël. Raphaël es una biblioteca de Javascript, por lo que se ejecuta completamente en el cliente, y Rails es un marco de aplicación web que se ejecuta en el servidor. Todo lo que necesita hacer para integrarlos es incluir Raphaël en su página y proporcionarle datos en un formato fácil de usar de Javascript; El uso de controladores RESTful que proporcionan datos en JSON debería facilitar la carga de datos mediante XMLHttpRequest desde el cliente, que luego puede visualizar con Raphaël.

2

Ryan Bates hablar de gráficos (incluido Rafael) en este Railscasts, estoy bastante seguro Es un buen punto de partida.

2

Raphael es una biblioteca JS independiente, el marco de trabajo/lenguaje del lado del servidor que elija no es importante. Sin embargo, no puedes conectar uno con el otro, tendrás que encontrar la forma de suministrar a Raphael los datos que necesita en el formato que espera. Rieles no será mejor o peor que cualquier otro marco en esto.

0

No debería haber problemas, especialmente desde que Rails 3 se ha convertido en un servidor independiente de JS.

Haciendo una búsqueda rápida rápida Vi esta biblioteca que podría merecer su consideración. No parece que tenga gráficos circulares, pero de lo contrario se ve bien: Flot

Esa biblioteca en particular está hecha para integrarse con jQuery, que es una biblioteca JS popular y bien documentada con la que Rails 3 juega muy bien.

0

Si se siente flojo, puede usar un gem que incluirá los archivos relevantes para usted.

0

Es muy fácil. Raphaël es una biblioteca de JavaScript, así que para usarlo, coloque el archivo raphael-min.js en su carpeta app/assets/javascript. A continuación, añadir esta línea

app/views/layouts/application.html.erb

<!DOCTYPE html> 
<html> 
<head> 
    <title></title> 
    <%= stylesheet_link_tag "application", :media => "all" %> 
    <%= javascript_include_tag "raphael-min" %> 
    <%= javascript_include_tag "application" %> 
    <%= csrf_meta_tags %> 
... 

a continuación, escribir el código JavaScript en la aplicación/activos/archivo javascript/application.js. Esto debería funcionar.