0

如何使用 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

4

2 回答 2

2

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

他们在这里更新了他们的 MongoDB 文档

示例应用程序是Zza!

他们的服务器端适配器是一个 Node 包,叫做微风-mongodb

他们的客户端适配器是 Breeze.dataservice.mongo.js(在 GitHub 上可用

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

于 2013-08-08T13:44:49.207 回答
0

做一个初步的谷歌搜索,我找到了连接到微风的文档: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

于 2013-07-31T23:25:32.617 回答