2016-05-04 8 views
1

私のマップ還元関数では、変数として「親」プロパティを取ることができますか?そのような:変数を持つcouchbaseバケットからデータを取得する

function (doc, meta) { 

    var key,value; 
    if(doc.type == "mainForums" && doc.parent == **VAR**){ 
    key = [doc.type,doc.id] 
    value = {Id : doc.id, Title : doc.title, Description : doc.description, Parent: doc.parent, HasChild : doc.hasChild, Level : doc.level, ImageUrl : "http://icon.donanimhaber.com/mobile-forum-icons/" + doc.iconPath, AvarageColor: doc.avarageColor, RepMode : doc.repMode, iconPath : doc.iconPath, MessageCountThisWeek : doc.messageCountThisWeek, TopicCountThisWeek : doc.topicCountThisWeek} 

    emit(key, value); 
    } 
} 

私はマップはCouchbaseのコンソール上の機能を減らす作成していますので、私は、この関数に変数を追加する方法を得ることはありません。 MVCのマッピング部分を以下のようにしています。

var tempForum = new Forum 
       { 
        Id = item.Id, 
        Title = item.Title, 
        Description = item.Description, 
        HasChild = item.HasChild, 
        Level = item.Level, 
        iconPath = item.iconPath, 
        Parent = item.Parent, 
        IsFavorite = item.IsFavorite, 
        TopicCountThisWeek = item.TopicCountThisWeek, 
        MessageCountThisWeek = item.MessageCountThisWeek, 
        RepMode = item.RepMode, 
        ForumExtra = item.ForumExtra 
} 

jsonを画面に正しく印刷するには、次のようにします。私はモバイル(アンドロイド)プログラマが私に変数として与えてくれるものを取って、4と言い、sync_gatewayからparent = 4のドキュメントを持って来るべきです。または、アンドロイドプログラマは地図を縮小する必要がありますか?

多分、私はビューについて忘れて、そのような状況でN1QLだけを使うべきでしょうか?私はN1QLでそれを行うことができるので、後でビューが必要な場合があるので、私はビューでもそれをやりたい。私は本当に何が最高だと私は本当に混乱しているのか分からない。

ありがとうございます。

+0

本当に?誰も?多分@SimonBasléはこれで私を助けることができますか? :) – hbc

答えて

0

これは、パラメータ化することができず、ドキュメントの完全な階層を返すために実際にビルドされていないビューには適していないと思います。

valueあなた emitはインデックスに保存されている(と reduce関数に渡された)、それは一般的に、良いアイデア完全な内容を格納するために本当に冗長 ではありませんますものです。 設定可能な親ビット数は、AFAIKをサポートできるビューからさらに遠いです。

N1QLを使用することをお勧めします。あるいは、クライアントの半分(N1QL)で半分を行う方法を見つけることができますか?

関連する問題