gpt4 book ai didi

database - 在网站 : help needed 中映射关系型 MongoDB 数据

转载 作者:搜寻专家 更新时间:2023-10-30 23:33:08 24 4
gpt4 key购买 nike

我运行一个 Android 应用程序,该应用程序在 map 上定位具有 ID、名称、所有者、类型、Place_ID 等属性的 OBJECTS,这些属性链接到 PLACES。 PLACES 具有 ID、纬度、经度、营业时间、营业时间等属性,... 数据存储在 Back4App 上的 MongoDB 中,我想保持这种状态。我有一个 OBJECTS 类和一个 PLACES 类。 OBJECTS 和 PLACES 之间的关系不是“MongoDB 关系”,它只是 OBJECTS 和 PLACES 类中的一个普通 String 字段。为了允许离线访问数据并最大限度地减少数据库服务器请求,该应用程序将设备上的本地 SQLITE 数据库与 MongoDB 在线数据库同步。在 Android 应用程序中,查询被传递到 SQLITE 数据库。

我正在尝试制作一个与应用程序执行相同工作的网站,该应用程序显示来自 MongoDB 的过滤数据。

我从一个使用 Parse SDK 的简单 html 和 javascript 网站开始,但我遇到了一些困难。

一个简单的查询是列出 50 公里半径内的所有 OBJECTS,即我需要 OBJECTS 它们所在的 PLACE。但是,在 SQLITE 中使用 SELECT...JOIN 可以轻松获得此信息的地方,我无法通过简单的 Parse 查询获得此信息,因为我也想知道 OBJECTS。而且我不能在 for 循环中运行 2 个异步查询。

您会为此类网站推荐哪种网站架构和/或语言?

您建议如何进行?

预先感谢您的帮助。

编辑:ZeekHuge 让我看到了不使用指针的糟糕设计。在我的 MongoDB 中实现指针后,下面是为我完成的代码行:

Parse.initialize("", "");
Parse.serverURL = '';

var eiffel = new Parse.GeoPoint(48.858093, 2.294694);
var myScores = '';
var Enseigne = Parse.Object.extend("ENSEIGNE");
var Flipper = Parse.Object.extend("FLIPPER");

var query = new Parse.Query(Flipper);
var innerquery = new Parse.Query(Enseigne);
innerquery.withinKilometers("ENS_GEO",eiffel,500);

query.equalTo("FLIP_ACTIF", true);
query.include("FLIP_ENSPOINT");
query.include("FLIP_MODPOINT");
query.matchesQuery("FLIP_ENSPOINT", innerquery);
query.find({
success: function(results) {
for (var i = 0; i < results.length; i++) {
var object = results[i];
myScores += '<tr><td>' + object.get('FLIP_MODPOINT').get('MOFL_NOM')
+ '</td><td>' + object.get('FLIP_ENSPOINT').get('ENS_NOM')
+ '</td><td>' + object.get('FLIP_ENSPOINT').get('ENS_GEO').latitude
+ '</td><td>' + object.get('FLIP_ENSPOINT').get('ENS_GEO').longitude
+ '</td></tr>';
}
(function($) {
$('#results-table').append(myScores);
})(jQuery);
},
error: function(error) {
alert("Error: " + error.code + " " + error.message);
}
});

最佳答案

通过用指针替换数据库键并使用 Innerquery 和 include 函数解决。请参阅有问题的示例。

关于database - 在网站 : help needed 中映射关系型 MongoDB 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46410359/

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