2012-05-04 7 views
1

私はhttps://github.com/mranney/node_redisを使用していて、一度に複数の値を持つセットを更新しようとしています(redis cli "SADD myset val1 val2"が問題ありません)。node.jsの入力として配列を使ってSADDが機能しないのはなぜですか?

私が使用しています正確なコマンドは次のとおりです。

var cmd_array = ['myset', 'val1', 'val2']; 
client.sadd(cmd_array); 

自分のドキュメントに基づいて、これは働いていたのはずです。それはなぜですか?

ありがとうございました

答えて

4

私にとってはうまくいきます。 私は問題なく次のスクリプトを実行することができます

var redis = require("redis"), 
    client_options = { 
    parser: "hiredis" 
}; 

var credis = redis.createClient('/tmp/redis.sock', client_options); 

function main() 
{ 
    credis.flushall(function(err,res) { 
     console.log("hello"); 
     x = [ "X", "A", "B", "C" ]; 
     credis.sadd(x); 
     credis.sadd("myset", x, function(err,res) { 
     console.log("done"); 
     credis.end(); 
     }); 
    }); 
} 

main(); 

それは項目数の期待値を持つ2つのキーを作成:私はあなたがnode_redisのバージョンを確認することをお勧め

redis 127.0.0.1:6379> keys *                                                     
1) "X"                                                          
2) "myset"                                                         
redis 127.0.0.1:6379> smembers myset                                                   
1) "X"                                                          
2) "A"                                                          
3) "B"                                                          
4) "C"                                                          
redis 127.0.0.1:6379> smembers X                                                    
1) "A"                                                          
2) "B"                                                          
3) "C"                                                          

を。 私が使用しているバージョンは:

$ npm list 
/home/dspezia/local/test_redis 
├── [email protected] 
└── [email protected] 
+0

ありがとうございました。私はバージョン0.7.2を使用していますが、正確なエラーは「エラー:エラー:エラー: 'sadd'コマンドの引数が間違っています。」 – user971956

+0

インストール済みのバージョンでコードを実行しました.2)、同じエラーがスローされます。質問は私のインストールの問題かバージョンかどうかです。 – user971956

+0

私は0.7.2にアップグレードしましたが、それでも問題なく動作します。確認するnode.jsバージョン自体もあります。 devブランチ(バージョン> 0.6.16)を使用していますか? –

関連する問題