生成一个 rails 模型,其中包含一个浮点数数组作为属性

Generate a rails model with an array of floats as attribute

免责声明:我是新手。

我正在尝试创建一个用户并将其保存到具有位置属性的数据库中。我希望该位置是一个包含用户经纬度的数组,我想使用 "navigator.geolocation.GetCurrentLocation()".

从浏览器中提取该位置

我创建了一个用户模型并运行进行了以下迁移:

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name
      t.float :location, array: true

      t.timestamps null: false
    end
  end
end

如果我传递一个浮点数,它允许我保存它。但是,如果我尝试将两个浮点数(lat 和 long)传递给它,它会抛出一个错误("no method to_f for "array")。在此之前有人尝试过这样做可以提供一些帮助吗?谢谢。

数组数据类型在postgres adapter中定义但在mysql中没有定义,有相当多的数据类型在postgres中支持但在mysql中不支持,它们在link。

不同数据库的数组不同。 MySQL 不支持数组,但支持 postgreSQL。 也许一些 noSQL 解决方案支持。