ruby-on-rails – 使用构建器生成XML时的Extra
发布时间:2020-12-16 22:08:39 所属栏目:百科 来源:网络整理
导读:我试图使用Builder生成KML.我知道他们是一些选择,以帮助这一点,但我将会做一些2.2特定的事情,不支持我所看到的KML宝石,一般希望能够完成这一杠杆只是一个 XML框架. 在渲染我的kml / xml时,我在文件末尾获得一个标签.我强烈地怀疑我设置了我的Builder对象,或
我试图使用Builder生成KML.我知道他们是一些选择,以帮助这一点,但我将会做一些2.2特定的事情,不支持我所看到的KML宝石,一般希望能够完成这一杠杆只是一个
XML框架.
在渲染我的kml / xml时,我在文件末尾获得一个标签.我强烈地怀疑我设置了我的Builder对象,或者如何渲染输出,我错过了一些基本的东西.以下是一个简单的例子来演示这个问题: def kml2dot2 @site = Site.find(params[:id]) xml = Builder::XmlMarkup.new(:indent => 2) xml.instruct! xml.kml("xmlns" => "http://www.opengis.net/kml/2.2") { xml.Placemark do xml.name @site.mapNameFull xml.Point do xml.coordinates @site.lat.to_s + "," + @site.lng.to_s + ",0" end end } render :text => xml,:type=>"text/kml" end 生产: <?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Placemark> <name>Seattle City Hall</name> <Point> <coordinates>47.6040746,-122.33005,0</coordinates> </Point> </Placemark> </kml> <to_s/> 我试图理解如何避免< to_s />被包括在内,我在做错了什么.感谢任何见解. 解决方法
您不需要初始化XML构建器对象.只需使用集成的构建器模板处理程序.
>调用模板kml2dot2.xml.builder 例 def kml2dot2 @site = Site.find(params[:id]) end # kml2dot2.xml.builder xml.kml("xmlns" => "http:// www.opengis.net/kml/2.2") do xml.Placemark do xml.name @site.mapNameFull xml.Point do xml.coordinates "#{@site.lat},#{@site.lng},0" end end end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |