gpt4 book ai didi

ruby-on-rails - Rails 基于位置的搜索不适用于 Heroku

转载 作者:行者123 更新时间:2023-12-02 01:00:52 25 4
gpt4 key购买 nike

最近我在 Heroku 上部署了我的应用程序。我正在使用 Geokit 根据用户位置搜索事件。

@events = Event.all(:origin => [@location.lat, @location.lng], :within => 5, :conditions => ["end_date >= ?", Date.today], :选择=>“id,created_at,user_id,位置,描述,永久链接,标题”,:order =>“created_at DESC”)

上面的语句在我的带有 mysql 数据库的本地系统中运行良好。

但是我在 Heroku 上执行相同的 stmt 时遇到错误。请检查我在 Heroku 上遇到的以下错误。

ActiveRecord::StatementInvalid(PGError:错误:函数弧度(字符变化)不存在2011-03-20T00:52:23-07:00 应用程序[web.1]: 第 2 行: ...,COS(0.303256183987648)*COS(1.36963671754269)*COS(RADIANS(fr...2011-03-20T00:52:23-07:00 应用程序[web.1]:^2011-03-20T00:52:23-07:00 app[web.1]: 提示:没有函数与给定名称和参数类型匹配。您可能需要添加显式类型转换。

任何帮助将不胜感激。

谢谢,卡延。

最佳答案

需要注意的是,Heroku 使用 Postgres 作为唯一的 SQL 数据库后端:http://devcenter.heroku.com/articles/database

因此,您的问题与这两个问答有关:

Why does Postgresql fail with Geokit like this?

Rails: Converting from MySQL to PostGres breaks Geokit Distance Calculations?

在您的情况下,您应该添加数据库迁移并将位置模型中的“lat”和“lng”从“string”(或“text”)更改为“float”,然后 Geokit 应该可以与 Postgres 一起正常工作分别是 Heroku。

关于ruby-on-rails - Rails 基于位置的搜索不适用于 Heroku,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5367365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com