小编jlm*_*ald的帖子

在MongoDB中搜索多个字段以查找多个值

我有一个MongoDB集合,其中特定字符串可能出现在以下任何一个字段中:

{"_id":1, "field1":"foo","field2":"bar","field3":"baz", "otherfield":"stuff"},
{"_id":2, "field1": "bar", "field2": "baz", "field3": "foo", "otherfield":"morestuff"},
{"_id":3, "field1": "baz", "field2": "foo", "field3": "bar", "otherfield":"you get the idea"}
Run Code Online (Sandbox Code Playgroud)

我需要查询,以便返回所有记录,其中一组字段中的任何一个等于数组中的任何值...基本上,如果我有,["foo","bar"]我需要它匹配,如果这些字符串中的任何一个在field1或field2 (但不是任何其他领域).

显然,我可以通过一系列多个查询来做到这一点

db.collection.find({"field1":{"$in":["foo","bar"]}}) db.collection.find({"field2":{"$in":["foo","bar"]}})

我已经制作了一个非常大的$或查询将它们连接在一起,但它似乎效率太低(我的实际集合需要匹配9个字段中任何一个中可能出现的15个字符串中的任何一个)...但我仍然是nosql数据库的新手,我不确定我需要在这里使用的最佳范例.任何帮助是极大的赞赏.

arrays mongodb

17
推荐指数
2
解决办法
4万
查看次数

Google API:查找用户YouTube频道

我使用的是YouTube API,并尝试获取用户的YouTube链接.唯一显示的是Google+链接,称为链接字段.无论如何从Google帐户信息中获取用户的Youtube信息?

Google Response具有first_name,given_name和json响应中的链接.

谢谢!

youtube oauth youtube-api

8
推荐指数
2
解决办法
2495
查看次数

AngularJS从一个服务广播,不会触发对第二个服务的调用

我已经定义了两个AngularJS服务...一个用于YouTube播放器API,另一个用于YouTube iFrame数据API.它们看起来像这样:

angular.module('myApp.services',[]).run(function() {
    var tag = document.createElement('script');
    tag.src = "//www.youtube.com/iframe_api";
    var firstScriptTag = document.getElementsByTagName('script')[0];
    firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
})
.factory('YtPlayerApi', ['$window', '$rootScope', function ($window, $rootScope) {
    var ytplayer = {"playerId":null,
    "playerObj":null,
    "videoId":null,
    "height":390,
    "width":640};

    $window.onYouTubeIframeAPIReady = function () {
        $rootScope.$broadcast('loadedApi');
    };

    ytplayer.setPlayerId = function(elemId) {
        this.playerId=elemId;
    };

    ytplayer.loadPlayer = function () {
       this.playerObj = new YT.Player(this.playerId, {
            height: this.height,
            width: this.width,
            videoId: this.videoId
        });
    };
    return ytplayer;
}])
.factory('YtDataApi', ['appConfig','$http', function(cfg,$http){
    var _params = {
        key: cfg.youtubeKey
    };
    var api="https://www.googleapis.com/youtube/v3/";
    var …
Run Code Online (Sandbox Code Playgroud)

youtube-api angularjs

6
推荐指数
1
解决办法
1648
查看次数

标签 统计

youtube-api ×2

angularjs ×1

arrays ×1

mongodb ×1

oauth ×1

youtube ×1