Javascript中不带引号的Ruby on Rails变量

Javascript中不带引号的Ruby on Rails变量,javascript,ruby-on-rails,ruby,variables,kml,Javascript,Ruby On Rails,Ruby,Variables,Kml,我使用RubyonRails,我想在我的索引视图上使用Javascript中的Ruby变量 下面是Ruby代码: def kml require 'ruby_kml' kml = KMLFile.new folder = KML::Folder.new(:name => 'Melbourne Stations') [ ["Berlin1", 52.520645, 13.409779], ["Berlin2", 52.520645, 13.409779], ["B

我使用RubyonRails,我想在我的索引视图上使用Javascript中的Ruby变量

下面是Ruby代码:

def kml

require 'ruby_kml'

kml = KMLFile.new
folder = KML::Folder.new(:name => 'Melbourne Stations')
[
    ["Berlin1", 52.520645, 13.409779],
    ["Berlin2", 52.520645, 13.409779],
    ["Berlin3", 13.409779, 52.520645],
].each do |name, lat, lng|
  folder.features << KML::Placemark.new(
      :name => name,
      :geometry => KML::Point.new(:coordinates => {:lat => lat, :lng =>      lng})
  )
end
kml.objects << folder

@kml = kml.render

return kml
end
def kml
需要“ruby_kml”
kml=KMLFile.new
folder=KML::folder.new(:name=>“墨尔本车站”)
[
[“Berlin1”,52.520645,13.409779],
[“Berlin2”,52.520645,13.409779],
[“Berlin3”,13.409779,52.520645],
].每个do |名称、lat、lng|
folder.features名称,
:geometry=>KML::Point.new(:坐标=>{:lat=>lat,:lng=>lng})
)
结束

kml.objects好的,我自己解决了这个问题…:D我刚刚添加了以下Javascript代码:

var kml = '<%=raw @kml.to_json %>';

kml = kml.replace("\"", "");
var kml='';
kml=kml。替换(“\”,“);

所以我创建了一个Javascript变量,刚刚替换了引号…太简单了-。-

你试过了吗?
是的,我试过了。但它不起作用:/try
如果我使用raw,它会使用真正的引号(“)而不是“…但它只在没有”或“的情况下起作用”
var vectorLayer = new ol.layer.Heatmap({
    source: new ol.source.Vector({
        features: (new ol.format.KML({
            extractStyles: false
        })).readFeatures('<%= kml.render.to_json %>',{
                    dataProjection:'EPSG:4326',
                    featureProjection:'EPSG:3857'
                } )
    })
});
var kml = '<%=raw @kml.to_json %>';

kml = kml.replace("\"", "");