私はredisから取得したオブジェクトのJSON表現でノードサービスを提供するためにnode_redisを使用しています。私はおそらくそれはあなたの多くのための比較的基本的なものだと思うが、私は困惑している。私はの前にの前に私の応答を送ってきます。私はすべての私のハッシュを通り抜けて保管しました。ここではCoffeeScriptのです:redisハッシュをJSONに変換するには?
objects = []
client.keys 'objects*', (err,keys) ->
for key in keys
client.hgetall key, (err,obj) ->
objects.push obj
response.end JSON.stringify objects
とJavaScriptを生成:
objects= [];
client.keys('objects*', function(err, keys) {
var key, _i, _len, _results;
_results = [];
for (_i = 0, _len = keys.length; _i < _len; _i++) {
key = keys[_i];
_results.push(client.hgetall(key, function(err, obj) {
return objects.push(obj);
}));
}
return _results;
});
return response.end(JSON.stringify(objects));
それが完了するために、内側のものを待っている間、私は休暇で、私のコードを配置する方法がわかりません。私はそれを扱う方法があると思うが、何も考えることはできない。ありがとうございます。
ありがとうございます。これは私の問題を解決します。私は、すべてがすべて完了するまで、さらに執行が遅れるような欠けていたパターンがあると思ったが、何度も間違っていた。 「ハッシュをどのように保存するかの変更」に関して、私は常に提案を受け入れています。私はrelationalDBの土地から新鮮で、私は簡単に任意の基準に基づいて "オブジェクト"の束をつかむことに慣れています。 – CircusNinja
私は最初にデータを構造化する方法を見つけようとしている赤字で時間を過ごしたので、クエリが簡単でした。私は "内側"と "外側"の非同期関数を持つたくさんのノードコードを書いて、最後に応答を描画していました。私のスキーマを最終的に変更してデータを取り込み、それをフィルタリングすることができました。しかし、あなたのユースケースにもよりますが、そうするための正当な理由があります。 – tjarratt