問題タブ [ruby-object-mapper]
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 Object Mapper でリレーションを結合する
Active Record と SQLite から Ruby Object Mapper に移行している"ちょっとした" Rails アプリがあります。これは主に、データ マッパー パターンがコードに与える影響を調べるチャンスです。
Course モデル、Game モデル、Score モデルがあります。コース レコードを計算するときは、コース オブジェクトとそれに関連付けられているすべてのゲーム、およびそれらの各ゲームのすべてのスコアを取得する必要があります。
結合された関係を作成する例を見つけましたが、その関係のマッパーを作成する方法の例を見つけることができなかったため、実際にそのデータを取り戻すことができません。
私の ROM スキーマは次のようになります。
そして、関連するすべてのゲームで特定のコースを取得できるクエリを実行したいと考えています。何かのようなもの:
しかし、結合を指定するための正しい構文を見つけることができませんでした。公理がメモリ内の結合をサポートしていることだけは知っています。
Ruby Object Mapper から結合されたデータで読み取りと書き込みを行う良い例を知っている人はいますか?
ruby - 複数のリレーションを使用する場合の rom-rb フォーム検証
http://rom-rb.org/を試していますが、複数のソース モデルが存在する場合に存在検証を通過させる方法がわかりません。次のスクリプトで新しいイベントとオーガナイザーが保存されると思いますが、それevent_name
が存在しないと表示されます。
私は何が欠けていますか?
ruby - Ruby Object Mapper SQL で結合テーブルを介して結合する方法
foo テーブル、bar テーブル、および foos_bars テーブル (3 つすべてに id 列がある場合) が与えられた場合、ドキュメントが暗示しているように見える foos でバーを取得する方法は次のようになります。
ただし、#qualified はクラスにのみ適用されるため、これは実際には "Foo" を 2 回修飾するだけですが、SQL クエリを使用するには少なくとも 2 つのテーブルを修飾する必要があります。#prefix も同様のようです。#qualified と prefix を省略すると、あいまいな SQL クエリになるだけです。
明確にするために: 問題は、Ruby Object Mapper で結合テーブルを介して結合する方法です。
ruby - Ruby Object Mapper で多対多結合をマップする方法
与えられた:
ROMドキュメントに示されている(ただし説明されていない)キーワードのランダムなバリエーションをたくさん試しましたが、役に立ちませんでした。ドキュメントを Foos のマッパーにリテラルに解釈したものを次に示しますが、これは機能しません。
foos_bars テーブルによってリンクされたすべてのバーを持つ、bars 属性を持つ foo の単純な結果を取得するために、マッパーを作成する (またはマッパーで動作するようにリレーションを作り直す) 方法を教えてください。
ruby - Ruby Object Mapper - Create コマンドでデフォルトの順序フィールドを変更するには?
現在、Ruby Object Mapper を既存の SQL データベースで使用するプロジェクトに取り組んでいます。create コマンドを実行すると問題が発生します。返された結果はtable_name.id
デフォルトでソートされているようです。私が作業している既存のテーブルには 以外の名前の主キーがありid
、unknown column 'id'
例外が発生するため、これは問題です。
デフォルトの注文列を変更する方法はありますか?