問題タブ [mongoid4]
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.
ruby-on-rails - 複数のサブジェクトからすべての投稿を取得する
ユーザーのすべての件名にのみ関連するすべての投稿を表示したい。私は試してみましたが、常にエラーが発生します。それは私にとって多くの関係があるので、あまりにも混乱しています。ここにモデルがあります。
ruby-on-rails - Mongoid has_and_belongs_to_many に「_ids」接尾辞がありませんか?
次の例では:
オブジェクトは次のように格納されます。
フィールドの名前tag_ids
をtags
およびband_ids
に変更することは可能bands
ですか? ありがとう
ruby-on-rails - Mongoidバッチコレクション挿入:新しく作成されたアイテムのIDを取得する方法は?
hereで説明されているように、新しいドキュメントの配列を MongoDB コレクションにバッチ挿入するのはかなり簡単です。
ただし、新しく作成された ID のリストを取得する方法は簡単ではありません。次のようなコーディングは可能ですか?
前もって感謝します!
mongoid4 - ActiveJob はパラメータとして BSON::ObjectId を渡します
アクティブなジョブでは、ObjectId をパラメーターとして渡すことができません。文字列との間で変換せずにそれを行う方法はありますか?
ruby-on-rails-4 - スコープが Mongoid で機能しない (未定義のメソッド `to_criteria')
ReleaseSchedule.next_release
他のコントローラーで呼び出す
次のエラーが発生しました
release_schedule.rb
ruby-on-rails - 初期化されていない定数 Mongoid::Slug - mongoid-slug を動作させることができません
ビューを読み込もうとすると、初期化されていない定数 Mongoid::Slug を受け取ります。
問題のあるモデルは次のとおりです。
Gemfile は次のように mongoid と mongoid-slug を取り込みます。
gem リストには、インストールされている各バージョンが次のように表示されます。
ここで何が起こっているかについて何か提案はありますか?
ruby-on-rails - Mongoid 1-N 挿入重複キー エラー
Mongoid 4.0.0 と Rails 4 から奇妙な動作が発生しています。1 対 N の関係があり、関係の N 側を保存しようとすると、重複キー エラー インデックスが発生します。いくつかのコードをお見せしましょう:
そして、失敗するテストは次のとおりです。
このテストを実行すると、次の結果が得られます。
コレクションの作成後にコマンドを追加してputs
、実際にその ID が複製されているものと同じであることを確認しました。さらに、ステートメントを削除するpur.collection_id = col.id
と、次のエラーが発生します。NoMethodError: undefined method 'insert' for nil:NilClass
これにより、Purchase オブジェクトを保存しようとすると、Mongoid は 1-N 関係の反対側を自動的に挿入しようとしますが、それは既に永続化されています。
pur.collection_id = col.id
に変更しても何も変わらないことに注意してくださいpur.collection = col
。
に変更することCollection.create
でこれを解決できますCollection.new
が、これは実行可能な解決策ではありません。ご想像のとおり、既存のコレクションの購入を作成できるようにする必要があります。
なぜこうなった?私はドキュメントを調べましたが、この動作については言及されていません。これは私の意見では意味がありません (または、この画面を長時間見すぎている可能性があります)。
これを解決する方法はありますか?
ruby-on-rails - id => _id の Mongoid 4.0.0 モデル フィールド強制の防止
Rails 4 で Mongoid 4.0.0 を使用しています。私のモデルは別のアプリケーションでテーブルをマップしていますが、フィールド名を制御できません。
モデルの 1 つに という名前のフィールドがあり、id
Mongo のフィールドに強制されてい_id
ます。たとえば、次のid
値を"something"
持つドキュメントを挿入すると、
それ以外の
この強制を回避し、Mongoid が 2 つのフィールドを混同しないようにし、私のid
フィールドをそのままにしておく方法はありますか?
私が言ったように、id
フィールドの名前を変更することはオプションではありません。
ありがとう!
[編集済み] これは明らかに MongoDB の問題ではありません。それはモペットまたは(私の推測では)モンゴイドでなければなりません。
params
キーを から:id
に変更しようとしました:_rid
が、これはまだ発生しています。エイリアスをチェックアウトするつもりですが、最初のパスから、それらが役立つとは思いません。それらは間違った方向に進んでいるようです。
nested-attributes - Mongoid、親子同時更新
私は次のモデル構造を持っています: aBanner embeds_many Slides
と eachSlide embeds_many contents
いくつかのコンテンツを含む 1 つのスライドを含むバナーから始めています。ここで、JSON 要求をサーバーに送信して、新しいコンテンツを既存のスライドに追加し、そのコンテンツで新しいスライドを作成します。何かのようなもの
今呼び出すとbanner.update banner_params
、非常に奇妙なエラーが発生します。
これは自明のエラーですが、
エラー 16837 で失敗しました: 「'banner.slides.0.contents' と 'banner.slides' を同時に更新することはできません」
しかし、新しいスライドを作成し、既存のスライドに新しいコンテンツを一度に追加することは許可されていると確信しています。