我正在尝试使用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
Run Code Online (Sandbox Code Playgroud)
生产:
<?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/>
Run Code Online (Sandbox Code Playgroud)
我试图了解如何避免<to_s/>被包含在内以及我在使用Builder时遇到的问题.感谢您的任何见解.
我有以下地形配置:
resource "aws_key_pair" "default_key_pair" {
key_name = "default_key_pair"
public_key = file("../../public_keys/default_key.pub")
}
Run Code Online (Sandbox Code Playgroud)
然后,我最初运行:
terraform import aws_key_pair.default_key_pair default_key_pair
Run Code Online (Sandbox Code Playgroud)
跟进的是
terraform apply
Run Code Online (Sandbox Code Playgroud)
然后它说
# aws_key_pair.default_key_pair must be replaced
-/+ resource "aws_key_pair" "default_key_pair" {
~ arn = "arn:aws:ec2:place:id:key-pair/default_key_pair" -> (known after apply)
~ fingerprint = "safasldjfjfljasfjasodjflasjfsdljfasdjf" -> (known after apply)
~ id = "default_key_pair" -> (known after apply)
+ key_name_prefix = (known after apply)
~ key_pair_id = "key-somethin-something" -> (known after apply)
~ key_type = "ed25519" -> (known after apply)
+ public_key = …Run Code Online (Sandbox Code Playgroud)