如何使用loopback为mongodb创建一个post API

时间:2017-06-22 07:41:18

标签: mongodb strongloop loopback

我是mongodbloopback的新手。我想将数据从我的应用程序发送并保存到数据库。我怎么能这样做?

更新 商店模特:

{
  "shopname": "string",
  "tel": "string",
  "latlng": "string",
  "address": "string",
  "id": "string",
  "personId": "string"
}

CURL:

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ 
   "shopname": "spring", \ 
   "tel": "12345678", \ 
   "latlng": "52.1106986,21.7768998", \ 
   "address": "05-319 Skwarne, Poland" \ 
 }' 'http://localhost:3000/api/shops'

现在我应该在shops.js写一下api,以便在app中使用api将数据发送到数据库?

'use strict';

    module.exports = function(Shops) {

    };

1 个答案:

答案 0 :(得分:1)

您应该已经提供了有关您已经完成的步骤的更多信息。 让我从第一步开始:

  1. 在您的服务器上下载并安装mongodb:link

  2. 运行mongodb后,将所需的数据库信息添加到datasources.json文件中。 e.g。

    {
        "db": {
        "name": "db",
        "connector": "memory"
        },
        "shopDB": {
        "host": "localhost",
        "port": 27017,
        "url": "mongodb://localhost:27017/shopDB",
        "database": "shopDB",
        "password": "",
        "name": "shopDB",
        "user": "",
        "connector": "mongodb"
        }
    }
    
  3. 通过npm将loopback-connector-mongodb添加到您的项目中。

  4. 现在定义你的模型(你可以利用loopback的用户友好命令行界面来执行此操作.call command" slc loopback:model"在你的项目根文件夹中)

  5. 完成第4步后,loopback将为您创建2个文件:shop.js和shop.json =>这些文件位于projectFolder / common / models /目录中。请注意,在命名模型中遵循环回约定并以单数形式(商店)命名模型是一种很好的做法。 (它在项目的其他部分使用复数形式的模型名称)。你的shop.json应该如下所示:

    {
        "name": "shop",
        "plural": "shops",
        "base": "PersistedModel",
        "idInjection": true,
        "options": {
            "validateUpsert": true
        },
        "properties": {
            "shopname": {
                "type": "string",
                "required": true
            },
            "tel": {
                "type": "string",
                "required": true
            },
            "latlng": {
                "type": "string",
                "required": true
            },
            "address": {
                "type": "string"
            },
            "personId": {
                "type": "string",
                "required": true
            }
        },
        "validations": [],
        "relations": {},
        "acls": [],
        "methods": {}
    }
    
  6. 现在您可以将店铺json发布到http://localhost:3000/api/shops/。请注意,我们的商店模型继承自PersistedModel基础模型,并具有一些内置函数来执行crud操作。如果你只想在数据库中创建一些商店实例,你就不需要在shop.js文件中添加任何内容了!