Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs MongoDB Json文档结构_Angularjs_Mongodb_Mean Stack_Mean - Fatal编程技术网

Angularjs MongoDB Json文档结构

Angularjs MongoDB Json文档结构,angularjs,mongodb,mean-stack,mean,Angularjs,Mongodb,Mean Stack,Mean,我正在使用MEAN创建一个web应用程序。我正在看AngularJS教程,它们有一个包含所有产品的大JSON文件,然后每个产品都有单独的JSON文件 链接: 如果我使用MongoDB并拥有这些数据 "title: Grand Theft Auto V", "genre": "Genre: Action, Adventure", "developer": "Developer: Rockstar North", "releasedate": "Release Date: 2015. April 1

我正在使用MEAN创建一个web应用程序。我正在看AngularJS教程,它们有一个包含所有产品的大JSON文件,然后每个产品都有单独的JSON文件

链接:

如果我使用MongoDB并拥有这些数据

"title: Grand Theft Auto V",
"genre": "Genre: Action, Adventure",
"developer": "Developer: Rockstar North",
"releasedate": "Release Date: 2015. April 14. (PC)",
"publisher": "Publisher: Rockstar Games ",
"rcpu": "Intel Core i5 3470 @ 3.2GHZ (4 CPUs) / AMD X8 FX-8350 @ 4GHZ",
"rram": "8GB",
"rgpu": "NVIDIA GTX 660 2GB / AMD HD7870 2GB",
"directx": "12",
"operatingsystem": "Windows 7 ",
"storage": "65GB",
"mcpu": "Intel Core 2 Quad CPU Q6600/AMD Phenom 9850 Quad-Core Processor",
"mgpu": "NVIDIA 9800 GT 1GB / AMD HD 4870 1GB",
"ram": "4GB"
我想有一个所有游戏的标题列表,然后点击加载系统要求

保存数据的最佳方式是什么


谢谢。

首先,您可以按照下面的步骤为游戏创建REST API

现在您需要游戏列表的数据。要实现这一目标,您可以执行以下操作:

db.collection('games').find({}, {title: 1}, function(err, games){
    if(err) console.log("Error: " + JSON.stringify(err));
    if(games) res.json(200, games);
});
现在,这将返回游戏
标题
及其
\u id
字段的列表

其次,你需要一个游戏的细节。您可以通过查询
游戏
收藏的
\u id
字段来获取。大概是这样的:

db.collection('games').findOne({_id: game_id_from_request_params}, function(err, game){
    if(err) console.log("Error: " + JSON.stringify(err));
    if(game) res.json(200, game);
});
这将为您提供有关特定游戏的详细信息,包括所有系统要求


希望这能有所帮助。

首先,您可以按照下面的步骤为您的游戏创建REST API

现在您需要游戏列表的数据。要实现这一目标,您可以执行以下操作:

db.collection('games').find({}, {title: 1}, function(err, games){
    if(err) console.log("Error: " + JSON.stringify(err));
    if(games) res.json(200, games);
});
现在,这将返回游戏
标题
及其
\u id
字段的列表

其次,你需要一个游戏的细节。您可以通过查询
游戏
收藏的
\u id
字段来获取。大概是这样的:

db.collection('games').findOne({_id: game_id_from_request_params}, function(err, game){
    if(err) console.log("Error: " + JSON.stringify(err));
    if(game) res.json(200, game);
});
这将为您提供有关特定游戏的详细信息,包括所有系统要求


希望这能有所帮助。

对不起,我想你的问题不清楚。当你问“存储数据的最佳方式是什么”时,你的意思是:1)对于你的任务来说,什么是最好的数据库技术;2) 最好的数据库模式/模型是什么?或者3)获取数据并为数据库提供数据的最佳方式是什么。或者一个也没有。请指定。@Hector-MEAN代表MongoDB Express.JS Angular.JS Node.JS抱歉,我想你的问题不清楚。当你问“存储数据的最佳方式是什么”时,你的意思是:1)对于你的任务来说,什么是最好的数据库技术;2) 最好的数据库模式/模型是什么?或者3)获取数据并为数据库提供数据的最佳方式是什么。或者一个也没有。请指定。@Hector-MEAN代表MongoDB Express.JS Angular.JS Node.JS感谢您的回复,您是说我可以在一个文档中获得数据?角度示例是,他们使用phones.json获取关于所有手机的少量信息,然后每个手机使用一个json文件。据我所知,mongoDB文档与.JSON文件相同?实际上,mongoDB文档本质上是一个JSON对象。JSON对象本质上是一个带有键值对的JavaScript对象。现在由您决定是否将所有JSON对象保存在一个JSON文件中。MongoDB所做的是维护一个JSON对象文档集合,它们的存储方式完全取决于您。如果这只是为了练习,您还可以将这些JSON对象存储在AngularJS服务或工厂的数组中。然后从该服务或工厂调用方法来获取数据。是的,我以前使用AngularJS将数据存储在数组中,但因为有大量数据,所以我决定使用MongoDB。目前,我有一个MongoDB文档,其中包含大约50个条目,类似于示例一。我只是想确保存储数据的方法是有效的。谢谢您MongoDB中还有一个原则叫做
存储您要查询的内容
原则。这意味着您应该只在将用于特定视图的集合中存储特定数据。因此,在您提供的示例中,有一个phones.json,其中包含可能为所有电话的列表视图显示的数据。然后每个手机都有单独的文件。当用户单击手机时,每个文件都将被使用,然后需要该特定手机的详细信息。希望你理解我在这里要解释的内容。谢谢你的回复,你是说我可以在一个文档中获得数据?角度示例是,他们使用phones.json获取关于所有手机的少量信息,然后每个手机使用一个json文件。据我所知,mongoDB文档与.JSON文件相同?实际上,mongoDB文档本质上是一个JSON对象。JSON对象本质上是一个带有键值对的JavaScript对象。现在由您决定是否将所有JSON对象保存在一个JSON文件中。MongoDB所做的是维护一个JSON对象文档集合,它们的存储方式完全取决于您。如果这只是为了练习,您还可以将这些JSON对象存储在AngularJS服务或工厂的数组中。然后从该服务或工厂调用方法来获取数据。是的,我以前使用AngularJS将数据存储在数组中,但因为有大量数据,所以我决定使用MongoDB。目前,我有一个MongoDB文档,其中包含大约50个条目,类似于示例一。我只是想确保存储数据的方法是有效的。谢谢您MongoDB中还有一个原则叫做
存储您要查询的内容
原则。这意味着您应该只在将用于特定视图的集合中存储特定数据。因此,在您提供的示例中,有一个phones.json,其中包含可能为所有电话的列表视图显示的数据。然后每个手机都有单独的文件。当用户单击手机时,每个文件都将被使用,然后需要该特定手机的详细信息。希望你能理解我要解释的内容。