問題タブ [squeel]
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-3 - 同じグループを共有するユーザーの要素を取得する Squeel クエリ構文
Ruby on Rails 3.2.13 と Squeel を使用すると、次のモデルがあります。
文字にはブール属性があります:public
。
Character モデル内で、現在のユーザーに表示されているすべての文字を取得したいと考えています。これは、次の条件によって決定されます。
- キャラクターが現在のユーザーに属している OR
- キャラクターが公開されている OR
- 現在のユーザーがキャラクターのユーザーとグループを共有している
結果はActiveRecord::Relation
.
最初の 2 つの条件を一致させるのは簡単です。
3 番目の条件の場合、次のクエリは正しい結果を返しますが、おそらく最善の方法ではありません。
ActiveRecord::Relation
さらに、両方のクエリの結果を含む を生成する 2 つの結果を連結する方法を見つけることができません(merge
両方のクエリに一致する要素を生成し、 の代わりにを+
返します)。Array
ActiveRecord::Relation
単一の Squeel クエリでこれを処理する方法についてのヘルプは大歓迎です。
ruby-on-rails - 制限付きの高度なアクティブ レコード クエリ
私はアクティブレコードでより高度なクエリを実行しようとしていますが、それを記述する最良の方法がわかりません。うまくいけば、これは理にかなっています...
私の POSTGRES/rails アプリにはモデルがあります:
評価には小数列 :score があります。会社の名前で評価スコアの低い 10 を取得したいと考えています。しかし、私はまた、各従業員から単一の最低スコアのみを取得したいと考えています。結果リストに 10 のスコアのうち 5 つをすべて同じ従業員 ID から取得したくありません。
私は持っている:
しかし、単一のemployee.idで評価を単一の低い値に制限する方法に苦労しています
これを行う最善の方法は何ですか?