問題タブ [mongodb-ruby]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1234 参照

ruby - Mongo データベースに Ruby オブジェクトの配列を挿入する

だから、私は Ruby MongoDB ドライバーを使用しており、次のように挿入してオブジェクトを作成したいと考えています。

@board は Board クラスのインスタンスです。

とタイル

最後に、「タイル」フィールドは次のようになります。

次のエラーが表示されます。

私が使用している宝石: 'sinatra'、'mongo (2.0.4)'、および 'bson_ext' (すべて Bundler.require を使用して必要です)。ありがとう!

0 投票する
0 に答える
742 参照

mongodb - mongodb クラスター内の複数の mongos インスタンス間の負荷分散

私はいくつかのmongosインスタンスを持っています。ruby と node.js アプリケーションがあります。すべての mongos インスタンスのホストを mongodb 接続 URI に配置できます。ruby および node.js ドライバーはフェイルオーバーを処理できます。しかし、2 つのドライバーは複数の mongos インスタンス間でバランスを取ることができますか? ドキュメントが、各アプリケーションを 1 つの mongos インスタンスのみに作成するように提案している理由。Besize カーソルの問題です。他の理由はありますか? では、複数の mongos ホストを 1 つの URI に入れることはできますか?

本番環境で複数の mongos インスタンス用にスタンドアロンのロード バランサーをセットアップする例はありますか?

0 投票する
1 に答える
117 参照

mongodb - MongoDB (Ruby) で 1 行のデータを更新する方法

mongodb を使用してデータを挿入するための以下のコードがある場合、その値を更新するにはどうすればよいですか。update_one/update_many 関数の引数の設定と混同しています。

更新機能を実行できませんでした。助けてください!

0 投票する
1 に答える
556 参照

ruby-on-rails - Ruby Mongo ドライバー プロジェクション Elemmatch

http://www.w3resource.com/mongodb/mongodb-elemmatch-projection-operators.phpのコードに従って、ruby mongodb ドライバーを使用してテスト データベースをセットアップしました。

自宅でフォローしている人は、最初にhttps://docs.mongodb.com/ecosystem/tutorial/ruby-driver-tutorial/#creating-a-clientで説明されているように mongo ドライバーをインストールしてから、次のコマンドを実行する必要があります。 .

client = Mongo::Client.new([ '127.0.0.1:27017'], :データベース => 'mydb')

テスト = クライアント['テスト']

doc = { "_id" => 1, "バッチ" =>10452, "tran_details" =>[ { "qty" =>200, "prate" =>50, "mrp" =>70 }, { "qty" =>250, "prate" =>50, "mrp" =>60 }, { "qty" =>190, "prate" =>55, "mrp" =>75 } ] }

test.insert_one(ドキュメント)

w3 チュートリアルで作成されたさまざまなドキュメントをすべて挿入します。

w3 チュートリアルの例 2 を見ると、翻訳された ruby​​ find は次のようになります。

test.find({"バッチ" => 10452}).projection({"tran_details" => {"$elemMatch" => {"prate" => 50, "mrp" => {"$gte" => 70 }}}}).to_a

例と同じ結果を返します。

=> [{"_id"=>1, "tran_details"=>[{"qty"=>200, "prate"=>50, "mrp"=>70}]}, {"_id"=>3} , {"_id"=>4}]

私の問題は、返されるフィールドを指定しながら、上記の制約 (mrp gte 70 など) で結果を制約したいということです。

たとえば、mrp gte 70 を持つ tran_details のみを制約しますが、返される結果には prate フィールド (またはフィールドの任意のサブセット) のみが含まれます。

クエリで prate フィールドのみを返すことができます。

test.find({"バッチ" => 10452}).projection({"tran_details.prate" => 1}).to_a

2 つの異なるプロジェクションの効果を組み合わせたいのですが、それをオンラインで行う方法に関するドキュメントは見たことがありません。2 つのプロジェクションを互いにつなげると、最終的なプロジェクションだけが効果を発揮します。

0 投票する
1 に答える
531 参照

ruby - Mongo::Collection::View のサイズを調べる

MongoDB と Ruby でクエリの結果のサイズを見つけようとしています。

ただし、これを実行すると、次のエラーが発生します。

このクエリによって返されるアイテムの数を正しく判断するにはどうすればよいですか? ドキュメントに情報が見つかりませんでした。