【问题标题】:How can I use MongoLab Api with Breeze.js?如何将 MongoLab Api 与 Breeze.js 一起使用?
【发布时间】:2013-07-31 03:45:49
【问题描述】:

如何使用 MongoLab Api 将 MongoDB 连接到带有 angular.js 的 Breeze.js 任何人都可以帮助连接设置。有人试过这个设置吗?

https://api.mongolab.com/api/1/databases/my-db/collections/my-coll?apiKey=myAPIKey

这是来自微风网站的 datacontext.js。 这是 plunkr http://plnkr.co/edit/upp7wB?p=preview

app.factory('datacontext',['$http','logger',  function($http, logger) {
  var log = logger.log;

  log("Creating datacontext");
  configureBreeze();

  var useLocalHost = false;
  var host=useLocalHost ? "http://localhost:63428" : "http://sampleservice.breezejs.com";
  var serviceName = host+"/api/todos";

  var manager = new breeze.EntityManager(serviceName);

  plunkerHelpers.isCorsCapable();
  var datacontext = {
    getAllTodos: getAllTodos,
    reset: reset
  };
  return datacontext;

  /***  supporting functions ***/  

  function getAllTodos() {
    var query = breeze.EntityQuery.from("Todos");    
    log("Getting Todos");
    return manager.executeQuery(query).then(success);

    function success(data) {
        log("Retrieved " + data.results.length);
        return data.results;
    }
  }

  function reset() {
    manager.clear(); 
    var deferred = Q.defer();
    $http.post(serviceName + '/reset')
     .then(resetSuccess, resetFail);
    return deferred.promise;

    function resetSuccess() {
      log("Database reset");
      deferred.resolve();
    }
    function resetFail() {
      log("Database reset failed");
      deferred.reject(new Error("Database reset failed"));
    }
  }

  function configureBreeze() {
    // configure to use the model library for Angular
    breeze.config.initializeAdapterInstance("modelLibrary", "backingStore", true);
    // configure to use camelCase
    breeze.NamingConvention.camelCase.setAsDefault();
  }
}]);

源文件。 http://www.breezejs.com/samples/todo-angular

https://support.mongolab.com/entries/20433053-REST-API-for-MongoDB

【问题讨论】:

  • 看看 Zza! Taytay 提到的示例,它应该正确回答您的问题。

标签: mongodb angularjs breeze mlab


【解决方案1】:

在您发布问题大约一周后,Breeze 人员发布了一个完整的 MongoDB 示例,该示例使用了他们编写的特定于 MongoDB 的客户端和服务器适配器。

他们有updated their MongoDB documentation here

示例应用是Zza!

他们的服务器端适配器是一个名为 breeze-mongodb 的 Node 包

他们的客户端适配器是 Breeze.dataservice.mongo.js (Available on GitHub)

如果我理解您的要求,我认为上述资源将是比其通用适配器更好的起点。希望对您有所帮助。

【讨论】:

    【解决方案2】:

    进行初步的谷歌搜索,我找到了连接到breathjs的文档:http://www.breezejs.com/documentation/mongodb

    Breeze/MongoDB - 服务器端处理部分下,它们详细说明了连接的步骤。

    例子:

    var host = 'localhost';
    var port = 27017;
    var dbName = 'MyNorthwindDatabase';
    

    当您注册 MongoLab 时,您可以在 Web UI 上登录并创建数据库。点击数据库,你会找到你的 URI——它应该看起来像这样:mongodb://dbuser:dbpassword@HOST:PORT/dbName

    您应该能够使用这些凭据连接到 Breeze。

    编码愉快!

    编辑:您可能想在 SO 上查看此线程:angular + breeze + mongoLab

    【讨论】:

      猜你喜欢
      • 2016-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-22
      • 2015-06-24
      • 2021-11-24
      • 2018-06-29
      • 2021-06-11
      相关资源
      最近更新 更多