我要运行的查询是:
SELECT zcta.geoid10, ST_AsGeoJSON(ST_simplify(zcta.geom,500)) FROM zcta WHERE zcta.geoid10 = '90210'
但是在rails控制台中输入以下命令时:
testquery = "SELECT zcta.geoid10, ST_AsGeoJSON(ST_simplify(zcta.geom,500)) FROM zcta WHERE zcta.geoid10 = '90210'"
Zcta.find_by_sql testquery
我得到了以下回复:
=> [#<Zcta >]
如果我做一个基本的查询,询问任何一列的结果,我都会得到预期的响应。这只在postgis函数中发生。知道怎么办吗?
最佳答案
将计算列作为别名,您将得到一个添加到返回对象的方法。
Zcta.
select("*, ST_AsGeoJSON(ST_simplify(geom,500)) as my_geo").
where(geoid10: '90210').each do |result|
puts result.my_geo
end
关于ruby-on-rails - 如何在Rails中使用PostGIS功能?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15842818/