問題タブ [mongoid3]
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 - 仮想属性による Mongoid クエリ DB
背景:投稿とユーザーがあり、どちらも HABTM コミュニティです。私の投稿モデルには、特定のユーザーに対する投稿の関連性を計算するための方法があります。これは、ユーザーが共有しているコミュニティの数を比較することによって行われます。
目的:特定の関連性によって投稿をクエリすること。
また
すべての投稿をクエリし、関連性で並べ替えます。
ユーザー変数がどこかに必要であることはわかっていますが、このようなことが可能かどうか、または回避策が存在するかどうか疑問に思っています。
devise - Mongoid3 + FactoryGirl 非互換?
Mongoid3 にアップグレードしたところ、大量のエラーが発生しました。
問題は常に、別のモデルに属しているモデルを構築しようとしていて、参照モデルを割り当てる場合です。
「user_id:@user.id」の部分のようです。私はもう試した:
毎回同じエラー。
ファクトリ ファイルは次のとおりです。
私はdeviseを使用しています。実行するコントローラーマクロは次のとおりです。
完全なスタック トレースは次のとおりです。
ruby-on-rails - 名前空間モデルフォームにルートクラス名を使用するように強制する
名前空間モデルを使用して、プラットフォームにさまざまなタイプのサービスを割り当てています。
関係:Platform has_many :services
&Service belongs_to :platform
Inhéritance:、、Service::Service1 < Service
などService::Service2 < Service
。
サービスタイプごとに異なるフィールドのセットがあります(私はMongoidを使用しているため、フィールドはモデルに宣言され、「サブモデル」タイプは_type
フィールドに格納されます)。
で、私はこのServicesController::new
ような新しいサービスを開始します:
params[:type]
ルートパラメータ(のようなもの/:platform_id/services/new/:type
)によって与えられます
私のform
見解では、サービスタイプ(Haml + simple_form)に応じてフィールドを表示できるようになりました:
これまではすべて正常に機能します:生成されたHTML入力は次のようになります:
service_service1[field1]
フィールド名として、私のparamsハッシュにはサブサービスに応じて異なるキーが含まれ、コントローラーのアクションでは、コードを「乾燥」さcreate
せた状態で、サブサービスごとにケース/いつを記述する必要があります(service[field1]
インスタンス化するには、正確なモデルを含む非表示フィールドを追加する必要があります)。
名前空間モデルを使用するときに、Railsにフィールド名としてルートクラスを使用させる方法はありますか?
編集:送信ボタンi18nについての同じ質問:テキストはすべてのサービスで同じであるため、 Railsは検索しhelpers.submit.service_service1.create
たい場所を探します。helpers.submit.service.create
ruby-on-rails - ANDとORを使用したMongoid3の複雑なクエリ
会社と地域に基づいてユーザーに投稿を表示するRails3.2ブログアプリがあります。また、別の会社または地域用に作成された場合でも、ユーザーが投稿の作成者である投稿を表示したいと思います(Postオブジェクトには地域と会社、およびUserオブジェクトがあります)。
MySQLで次のクエリを使用して同様のことを行いました。
現在、Mongoid gemを使用してアプリをMongoDBに移行しています。これは、私が理解できない最後のクエリです。これまでに得たものは、OriginとSelectorの組み合わせを使用してドキュメントを呼び出します。
ただし、これは、company_idとregion_idがnullであるか、users属性と一致する投稿のみをプルします。
ruby - Mongoid::Criteria#last は基準を変更し、間違った結果を返します
これは、mongoid (3.0.0) を使用して見つけた興味深いパターンであり、バグであると思われます。
ここまでは順調ですね!ただし、次を発行すると、奇妙な結果が得られます。
これにより、5 ではなくすべての製品数が表示されます (:limit => 5 があるため)
さらに奇妙な部分:
これは _id: 500fa5614f6d3a23d0000006 である必要があります。ここで、ID を再度マップしようとすると、次のようになります。
これで審査基準が完全に変わりました!ただし、これで適切な結果が得られます。
ただし、これは Mongoid 3.0.0 に関連しているようです。何か案は?
ruby-on-rails-3 - 方法は?:Mongoid3とDragonflyの構成
アプリをmongoidバージョン3にアップグレードしようとしています。トンボのイニシャライザーでは、次のように使用していました。
Mongoid.databaseはもう存在しません。今トンボの接続を設定するための最良の方法は何ですか?
ruby-on-rails - 奇妙なゴーストオブジェクトが出現
現在、UserModel (Devise)、ArticleModel、CommentModel の 3 つのモデルがあります。
私はモンゴイドで働いています。
私の記事/show.html.haml
私のコメント_コントローラー
今私の記事/ショーにID付きのコメントが表示されますが、完全に空で、このオブジェクトがどこから来たのかわかりません...
mongodb - 埋め込みドキュメントの Mongoid 交差基準
Mongoid 3 を使用して、いくつかの埋め込みドキュメントで 2 つのクエリの交差を取得しようとしています。
だから(偽の例)私が持っていると想像してください:
ユーザーからのコメント付きの投稿を取得したい場合は、
しかし、これらの両方のユーザーによるコメントを含む投稿を取得したい場合はどうすればよいでしょうか:
これは mongoid 3 では機能しません。最初の comments.author_id を 2 番目のもので上書きするので、次のようになります。
運がなくても試した他のバリエーション:
このクエリを構築するより良い方法はありますか? ありがとう!
javascript - 非表示フィールドにIDを追加し、それを他のデータと一緒にコントローラーに送信して、親モデルと関連付けることができるようにする方法は?
私は多くの写真を含む 1 つの投稿を持っています。1 つのビューには 2 つのフォームがあり、1 つは標準の投稿フィールドを持ち、もう 1 つは非同期的に写真を pictures_controller に送信します。JavaScript で受け取った多くの ID を投稿フォームの非表示フィールドに追加し、post_controller ループで非表示フィールドから ID を送信した後、それを投稿モデルに関連付ける方法は? ステップ 3 (楽しい部分) を実行しようとしています: How to use JQuery-File-Upload to upload multiple images on one page during creating post? .
投稿ビュー:
JavaScript (新しく受け取った ID を非表示フィールドに正しく追加する方法がわかりません。開始時に含まれるのは: のみです[]
):
ポストコントローラー:
役職:
Mongoid スロー エラー:undefined method 'compact' for #<Picture:0x007faf2513d810>
mongoid - rails と Mongoid、Qualification システムを作成 (Qualification を 2 つのモデルに埋め込む)
私はいくつかの写真を表示する小さなアプリに取り組んでいます。各写真は、1 から 5 のスケールで「投票」または「認定」できます。
資格は、ログインしているユーザーに対して 1 回だけ実行できます。
各画像の資格と、ユーザーが投票を設定した画像 (およびその投票の値を知る) を知る必要があるため、次のモデルを作成します。
しかし、これが正しいかどうかはわかりません。同じモデル (この場合は Voto) を 2 つの異なるドキュメント (Picture と User) に保存できますか?
これを達成する方法はありますか?