1

モデルに緯度経度を保存しようとしています。私は自分のモデルを次のように定義しました

attributes: {
    point: {type: 'json'}
}  

そして、座標を単純に[x、y]として渡しています。しかし、ポイントをNULLとして保存しています。というわけで、どなたか対処法をご存知の方がいらっしゃいましたら、よろしくお願いいたします。これを行う方法がわかりません。

4

2 に答える 2

0

よりファンキーなフィールド型を使用してこれと同様のことを試みましたが、プリミティブ型に分割するとうまくいくことがわかりました。

module.exports = {

  attributes: {

    speed: {
      type: 'string'
    },

    heading: {
      type: 'string'
    },

    altitude: {
      type: 'string'
    },

    altitudeAccuracy: {
      type: 'string'
    },

    longitude: {
      type: 'float',
      required: true
    },

    latitude: {
      type: 'float',
      required: true
    },

    accuracy: {
      type: 'string'
    }

  }

};

これは、地理データを格納するための完全なオブジェクトです。

于 2014-07-30T18:45:35.837 に答える
0

地理位置情報を JSON 属性として持っている場合は、次のように場所を保存できます。 { "type": "Point", "coordinates": [ 7.88, 47.78 ] } }

2dsphere次に、このフィールドで MongoDB にインデックスを作成すると

db.collection.createIndex({ geolocation: "2dsphere" })

MongoDB の空間クエリを利用できます。

于 2016-01-13T13:29:55.540 に答える