gpt4 book ai didi

ruby-on-rails - 关系 "venues"的新行违反检​​查约束 "enforce_srid_latlon"

转载 作者:行者123 更新时间:2023-11-29 12:00:54 26 4
gpt4 key购买 nike

当我尝试创建一个位置感知的新场所时出现以下错误。

ActiveRecord::StatementInvalid: PG::Error: ERROR:  new row for relation "venues" violates check constraint "enforce_srid_latlon"

这是我重现错误的方法。

v = Venue.create(:latlon => "POINT (43.245332 -85.4352332)")
v.save

我注意到在我的迁移中,我没有为 t.point :latlon 设置 :geographic => true 属性。这可能是导致我出现问题的原因吗?如果是这样,我如何在已包含数据的列上将该标志设置为 true?

最佳答案

正如 (Postgres) 错误消息告诉您的那样,新行将违反检查约束 enforce_srid_latlon

看看检查约束的定义,你就会有答案。在 psql 中,您可以使用:

\d venues

或者您可以从任何客户端使用此SQL 查询:

SELECT r.conname, pg_catalog.pg_get_constraintdef(r.oid, true)
FROM pg_catalog.pg_constraint r
WHERE r.conrelid = 'venues'::regclass
AND r.contype = 'c'
ORDER BY 1;

或者您可以使用类似 pgAdmin 的 GUI .

关于ruby-on-rails - 关系 "venues"的新行违反检​​查约束 "enforce_srid_latlon",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11439850/

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