如何将javascript变量传递到嵌入式ruby中

How to pass javascript variable into embeded ruby?

本文关键字:嵌入式 ruby javascript 变量      更新时间:2023-09-26

我正在开发一个带有Leaflet的Rails应用程序。我有模型管道,其字段位置线串类型。我希望能够单击地图,获取该点的坐标并返回距离该点一定距离的管道数量。我无法将坐标返回给 Ruby。我意识到Ruby在Javascript之前被执行,那么我该怎么做呢?这是我的 .js.erb 文件中的函数:

    function onMapClick(e) {
      var sql = <%= Pipe.where{st_dwithin((location),ST_GeomFromText("POINT(#{e.latlng.lat} #{e.latlon.lon})", 4326), 3000)}.count.to_s %>;
      map.openPopup(sql.toString(), e.latlng);
    };

为了将数据从JavaScript传递到服务器,你必须进行ajax调用