Estoy confundido acerca de cómo usar json en mi aplicación carriles (2.3.5). Estos son los elementos que necesito:Cómo caché JSON en ruby on rails?
- plantilla html
- datos JSON
- javascript para representar datos en la plantilla (utilizo PURE) datos
JSON, calculados usando métodos de ayuda (rieles y mis propios), es bastante grande y no cambia a menudo (en general, es pie de página, encabezado y algunas otras partes de la página), por lo que debe estar en la memoria caché. ¿Cuál es la forma correcta de hacerlo?
me trataron 3 enfoques.
A.
- html template and javascript to render data placed in the view html.erb
- method to get json data placed in the helper
<script type="text/javascript">
var data= <%= helper_method %>;
</script>
problema: cómo almacenar en caché los datos JSON?
B.
- html template and javascript to render data placed in the view html.erb
- method to get json data is a controller action
def footer
expires_in(4.hours)
render :json => { calculated_data }
end
- ajax request in javascript
$.ajax({
type: "GET",
url: "<%=footer_path %>",
success: function(data){
render json data in html template
}
});
Problema: segunda petición de enviar al servidor ...
C.
- html template and javascript to render data placed in the view html.erb
- method to get json data is a controller action
def footer
expires_in(4.hours)
render :json => { calculated_data }
end
- data in javascript
<script type="text/javascript" src="<%=footer_path %>">
</script>
problemas: ¿cómo puedo pasar resultado de esa secuencia de comandos para una variable que puedo usar en el javascript que representa los datos en la plantilla?
En el caso de B y C, es necesario incluir ayudantes en el controlador (métodos para calcular datos json), que es una solución bastante desagradable.
cuál debería ser la solución correcta para esto? ¿Qué enfoque es el apropiado para esto?
Gracias por todas las sugerencias.
Gracias por tomarse el tiempo para volver y publicar la solución, eres un héroe de la internet: p –