將應用程序複製到產品時,我的POSTGIS表列開始行爲異常,Rails通知我存在「未知的OID 26865」,並且這些字段將被視爲String。Rails中「未知OID」錯誤的來源是什麼?
而不是current_pos產生e。 G。我會得到0101000020E6100000FFDD958664C92A403619DEE6B2434A40
。看起來好像activerecord-postgis-adapter沒有安裝,或者安裝的不好,但是我通過測試數據類型RGeo :: Feature :: Point的存在並且通過測試分配
current_pos = "POINT (13.39318248760133 52.52908798020595)"
到字段 - 它沒有錯誤地進行,但後來產生了另一個不可理解的十六進制字符串,如上所述。另外,奇怪的是,POSTGIS在數據庫中正常工作,例如,爲ST_DISTANCE查詢提供正確的結果。因此,一個非常有限的問題是,在寫入,寫入解析(從點到十六進制格式),由SQL操作和讀取全部工作的情況下,只有在讀取時解析不會。
當我試圖用遷移,以確保數據庫列將有正確的類型,遷移失敗,給
undefined method `st_point' for #<ActiveRecord::ConnectionAdapters::PostgreSQL::TableDefinition:0x00000005cb80b8>