0

MongoLab Api を使用して MongoDB を angular.js を使用して Breeze.js に接続する方法 誰かがこのセットアップを試しましたか?

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

これは Breeze サイトの 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

あなたが質問を投稿してから約 1 週間後、Breeze の人々は、彼らが作成した MongoDB 固有のクライアントおよびサーバー アダプターを使用した完全な MongoDB の例を投稿しました。

彼らはMongoDBのドキュメントをここで更新しました

サンプルアプリはZza!

サーバー側のアダプターは、breeze-mongodbと呼ばれるノード パッケージです。

クライアント側のアダプターは Breeze.dataservice.mongo.js ( GitHub で入手可能)です。

あなたが求めていることを理解できれば、上記のリソースは、汎用アダプターよりも優れた出発点になると思います. それが役立つことを願っています。

于 2013-08-08T13:44:49.207 に答える
0

予備の Google 検索を行ったところ、breezejs に接続するためのドキュメントが見つかりました: 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 に答える