【发布时间】:2016-05-01 18:27:56
【问题描述】:
我在我的应用程序中设置了gmaps-autocomplete-rails gem,并且我有一个 UI 回调可以让我将 GPS 坐标设置为输入
function autocompleteMap(){
var completer;
completer = new GmapsCompleter({
...
updateUI: function(address, latLng) {
$("#myObject_coordinates").val(
"["+latLng.lat()+", "+latLng.lng()+"]"
)
}
});
}
我的 mongoid 模型接受坐标作为与地理编码器 gem 一起使用的数组。有没有一种实用的方法可以通过输入字段将 lat/lng 作为数组传递?建议使用一些 SO 答案
f.text_field(:coordinates, multiple: true)
但我不知道应该如何填充该值,因此它被解释为控制器中的一个数组(并保留 lat/Lng 顺序)
Get an array from a rails 表单在我的情况下没有帮助,因为我使用 javascript 来填充单个输入(或者我应该将其设置为填充两个输入?)
现在有了上面的js函数,关联的rails参数就变成了
params[:my_object][:coordinates] # => ["[x, y]"]
# Wanted: [x, y]
我必须手动将字符串解析为数组,还是有什么技巧?
此外,此输入需要清理,数字转换为浮点数,任何指南,关于如何“整齐”地做到这一点的提示?
【问题讨论】:
标签: ruby-on-rails arrays forms gps actioncontroller