問題タブ [default-scope]
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 - 親オブジェクトを find() するときに has_many 関係をスコープする最良の方法
クイズ アプリケーションでデフォルト スコープと名前付きスコープを理解するのに少し苦労しています。私はRails 3.0を使用しています。
私はモデル化するQuestion
モデルを持っていhas_many
UserResponse
ます。
Question
ご質問text
ありましたら可能answer_ids
です。 およびにUserResponse
結合user_id
します。question_id
answer_id
ユーザーに表示するときにfind()
、Question
すべてをプルしたくありませんUserResponse
。デフォルトではUserResponse
、現在の質問のみをプルして、user_id
この質問に既に回答しているかどうかを確認したいと思います。
Question
またはでスコープを作成してUserResponse
これを達成する にはどうすればよいですか?
ruby-on-rails - Rails 3.1.3 スコープ外スコープ
これに関する多くの投稿を見てきましたが、私の問題を解決するものはないようです。私は次のdefault_scope
ようなモデルを持っています:
inactive
他の (通常の) スコープがあり、 を使用してスコープを作成したいと考えていますunscoped
。スコープとして定義したいのですが、クラスメソッドとして定義されている場合にのみ機能します:
私が見逃した方法はありますか、それともクラスメソッドを使用してこのスコープを定義する必要がありますか?
ruby-on-rails - Rails の ActiveAdmin で default_scope をオーバーライドする方法
ActiveAdmin に登録されたリソースでは、モデルに対して次の default_scope が定義されています。
これにより、列のタイトルをクリックして、リソースのインデックス ページの並べ替えを変更できなくなっているようです。この既定の範囲を維持しながら、Active Admin の並べ替えを機能させる方法はありますか?
ruby-on-rails-3 - デフォルト スコープ Mongomapper
さまざまな方法でフィルター処理する必要がある同じコレクションを使用する大きなお尻のコレクションがあります
そして例えばこれ。
どちらも同じログを使用しますが、それぞれにtype
フィールドのデフォルト検索が必要です。
ruby-on-rails - デフォルトのスコープ (具体的には順序) のみをオーバーライドし、Rails では他に何もオーバーライドしません
したがって、基本的にBookとAuthorの 2 つのクラスがあります。本は複数の著者を持つことができ、著者は複数の本を持つことができます。ブックには、次の既定のスコープがあります。
著者のショーページで、その著者に関連するすべての本をリストしたいので、次のように言います...
これまでのところ、すべて順調です。author#show ページには、その著者に属するすべての書籍が発行日順に一覧表示されます。
本の人気度でソートできるgemも開発中です。
問題は、並べ替えを試みるたびに、default_scope が常に邪魔になることです。そして、その前にスコープを解除しようとすると、著者の関係が取り除かれ、データベース内のすべての本が返されます。例えば
ActiveRelation except() メソッド を使用してこのようなことを行うことができるかどうか疑問に思っています (これは機能するはずですが、機能しません。順序を無視しますが、default_scope 順序の場合は除きます)
なぜこれが機能しないのかについてのアイデアはありますか? これを別の方法で機能させる方法についてのアイデアはありますか? default_scope を取り除くことができることはわかっていますが、これを行う別の方法があるかどうか疑問に思っています。
ruby-on-rails - Rails 3 のオーナー フィルター モデル オブジェクト
ActiveRecord モデルでフィルタリングを行う必要があります。すべてのモデル オブジェクトを owner_id でフィルタリングしたいと考えています。私が必要とするのは、基本的に ActiveRecord の default_scope です。
しかし、モデルからアクセスできないセッション変数でフィルタリングする必要があります。私はいくつかの解決策を読みましたが、どれも機能しません。基本的に、default_scopeを宣言するときにセッションを使用できると言っています。
これはスコープの私の宣言です:
シンプルですね。しかし、メソッド session does not exist と言って失敗します。
あなたが助けてくれることを願っています
ruby - Sequel :: Modelの単一テーブル継承(Ruby ORM)
providers
データベースに、というタイプ列で呼び出されるテーブルがありますprovider_type
。 provider_type
次のいずれかになります。
- 中心
- スポンサー
呼び出されたクラスとSequel::Model
呼び出されたクラスを継承するクラスを作成したいのですが、結果として得られるメソッドは、またはによってそれぞれのクラスのすべてのクエリをスコープします。Center
Sponsor
provider_type = 'center'
provider_type = 'sponsor'
私がこれを行うことができることは100%必須ではありませんが、可能であれば理想的です。
ruby-on-rails - :include オプションを指定した default_scope rails 3.2
Rails3 アプリを 3.2.6 にアップグレードしています。非推奨の default_scope オプションに問題があります。
私は、campaign_sites を介した多対多の関係を持つキャンペーンとサイトのモデルをいくつか持っています。
これは Rails 3.0.10 で正常に動作していますが、3.2.6 にアップグレードした後、この行で次の mysql エラーが発生します。
ruby-on-rails - Mongoid default_scope
Mongoid によって駆動されるモデルに default_scope を設定しました。
私が見つけたとき、問題はありません:
現在のテナントの学生を返します
生徒を作成するとき:
ゼロを返します
現在のテナントを割り当てません
しかし、もしそうなら:
できます
としても:
それは正常な動作ですか?
Thx仲間
ruby-on-rails-3 - Rails default_scope は例外をスローします: undefined method abstract_class? オブジェクト:クラス用
アプリケーションで論理削除を適用したいと思います (レコードを完全に削除するのではなく、削除済みとしてマークされているだけです)。デフォルト値trueですべてのテーブルに利用可能な列を追加しました。ここで、すべてのモデルに対して次のコードを書くための共通の場所が必要です。
ActiveRecord::Base を拡張する参照Railsを使用して、monkey patch を使用して上記を行うことにしました。config/initializer/active_record_patch.rb に作成されたモンキー パッチ ファイル:
default_scope を追加すると、次のエラーが発生します
/gems/ruby-1.9.2-p290/gems/activerecord-3.0.9/lib/active_record/base.rb:1212:abstract_class class_of_active_record_descendant': undefined method
?」オブジェクト: クラス (NoMethodError) の場合