3

単純なcouchappを作成し、それをCouchDBインスタンスにデプロイします。しかし、私は異常に気づいています。(couchapp generate view ...を介して)作成されたビューは、CouchDBのFuton管理インターフェース(adminとしてログイン)で表示するとデータを返しますが、作成したcouchappを実行するとデータを返しません。これが私のコードの例です:

$.CouchApp(function(app) {
app.view("wine_list", { success: function(json) {
    json.rows.map(function(row) {
       alert(row.key);
    }); 
}});
});

上記のalert()から得られる結果は「null」です。

そして、次の場所に移動すると、http:// localhost:5984 / winedb / _design / wineapp / _view/wine_listが表示されます。

{"rows":[
{"key":null,"value":null}
  ]}

しかし、布団の管理インターフェースを開いてデザインドキュメント/ビューに移動すると、レコードが表示されます。今、布団に管理者としてログインしています。だから、私の推測では、couchapp javascriptコードで特定の認証クレデンシャルを使用する必要がありますか?もしそうなら、どのように?

4

1 に答える 1

5

ビューにmapコンポーネントとreduceコンポーネントの両方がある場合、これはFutonのユーザーインターフェイスのバグである可能性があります。

デフォルトでは、CouchDBはマップを提供し、結果をクエリに減らします。マップの結果のみを表示するには、パラメーターを指定する必要があり?reduce=falseます。

デフォルトでは、Futonが?reduce=falseパラメータを提供します。「デフォルト」の動作を取得するには、「reduce」チェックボックスをオンにする必要があります。

つまり、reduce=falseクエリに追加します。それは役に立ちますか?

于 2012-01-14T01:40:34.807 に答える