問題タブ [rails-models]

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.

0 投票する
1 に答える
1588 参照

ruby-on-rails - @blog.user.followers.build を使用した初期化されていない定数 User::relationship

以下のコードはエラーなしで動作します:

ただし、以下は「uninitialized constant User::relationship」というエラーになります。

ユーザー モデルは次のように宣言されます。

最初の例は機能するのに、2 番目の例では機能しないのはなぜですか?

編集:ブログモデル:

関係モデル:

0 投票する
1 に答える
320 参照

ruby-on-rails - RAILSユーザー階層; クラス、協会。多形?

私はこれに対する決定的な答えを見つけるのがどれほど難しいかに驚いています:それは私がそれをすべて間違って見ているに違いないほど一般的であるように思われます。

承認の役割を持つユーザーには、ROLES =%w[管理者モデレーター教師の学生の禁止]のようなものが実行されます。

一般に、ROLESフィールドと単一テーブル継承を使用することをお勧めします(ここのように)

ただし、これによりすべてのデータが1つのテーブルに配置されます。各ユーザータイプに固有の大量のデータがある場合はどうなりますか?

STIは、student.specialtyやteacher.portfolio_idのようなものを提供しますが、これらは不要であり、ブロックする必要があります。

Ruby Wayは、個別のテーブルを処理するための抽象基本モデルクラスを提案しています。

これにより、生徒と教師の両方に固有のテーブルが許可されます。ただし、User.find(:all)は機能しないと警告しています。さらに、必要な共通の属性があります。これは、ユーザーモデルの要点でした。

Userテーブルがないので、共通の属性はありませんか?

他のさまざまな回答は、、、またはを使用することを示唆して:polymorphic => true:class_name => 'User'ますas:が、投稿と画像の両方にコメントを追加するように説明されています。これは良い類似点ではないようです。

単にIS-A関係を使用して属性を継承した少なくとも1つの言語(およびおそらく2つのOODB)を思い出しているようです。

RAILSの方法は何ですか?

0 投票する
2 に答える
989 参照

ruby-on-rails-3 - テーブル レコードのサブセットから Rails モデルを作成する方法

すべて同じテーブルから取得するいくつかのモデルを作成しようとしています。各モデルのテーブル レコードを制限するにはどうすればよいですか? データ構造を変更するように言われる前に、これは、私が制御できない既存のバッキング DB からプルしているレポート アプリケーションです。

私のテーブルは次のようになります。

そして、次のような車とオートバイのモデルを構築したいと思います。

しかし、「Active Record さん、motorcycle モデルで vehicle_type =motorcycle のレコードのみが必要です」と言う方法がわかりません。

これは明らかなことだと思いますが、私の Google 検索はすべて、モデルを特定のレコードのサブセットに制限するのではなく、モデルのサブセットを検索する方法を返します。

0 投票する
2 に答える
236 参照

ruby-on-rails - 関連付けられたモデルで条件を満たすレコードをカウントするにはどうすればよいですか?

さて、私が持っているのは2つのモデルです...

ジライ問題:

重大度:

私がやろうとしているのは、jiraissue.severity = "S1" であるすべての Jiraissue の数を取得することです。

jiraissue テーブルに優先順位の列があることが判明したので、このトリックをモデルに適用できます...

ジライ問題:

そして、ビューで次のようなことをします...

Jiraissue で count_severity メソッドを取得するにはどうすればよいですか?

これは機能しません(また、私はそれを期待していません)...

しかし、私は完全に混乱しています。

0 投票する
2 に答える
1235 参照

ruby-on-rails - Railsモデルのインスタンスは1つだけ

著者が1人だけのブログがあります。Authorは、すべてのページに表示されるさまざまなフィールドをカプセル化します。著者モデルが必要ですか?

著者をどこに保存する必要がありますか(私はMongoDBを使用しています)、どうすればそれをレールの方法で行うことができますか?

0 投票する
3 に答える
146 参照

ruby-on-rails - データベース以外のデータ クラスを Rails 3 の「モデル」として作成する必要がありますか、それとも /lib 領域の基本クラスとして作成する必要がありますか?

データベース以外のデータ クラスを Rails 3 の「モデル」として作成する必要がありますか、それとも /lib 領域の基本クラスとして作成する必要がありますか?

計算されたドメイン オブジェクトを表すいくつかのクラスを構築したいと考えています。したがって、フィールドはデータベースのテーブル/列を参照しません。クラスには、データを使用するメソッドもあります。

質問 - これらのクラスを生成するとき、これらは /lib 領域に配置した通常の Ruby クラスである必要がありますか? または、これに Rails モデルを使用する必要がありますか (そして、「rails g model ...」で生成します)?

0 投票する
1 に答える
700 参照

ruby-on-rails - Rails の複数テーブルの継承とポリモーフィック アソシエーション

私は現在、Rails 3.2 を使用してアプリケーションを開発していますが、少し問題が発生しました。これは何百回も前に尋ねられたことを知っていますが、それを解決する答えが見つかりませんでした. これは同様の ER です: http://i.stack.imgur.com/x5V0G.png

私がやろうとしていることはかなり明白です。協会が次のようになることを望んでいます。

モデルを次のように定義できると便利です。

しかし、それは「MTI」ではなく「STI」用に予約されていることを理解しています。複雑なミックスインやプラグインを必要とせずにソリューションを機能させる方法はありますか? それとも不可能なだけですか?

0 投票する
1 に答える
663 参照

ruby-on-rails - 2機種共通のクリップアタッチメント

独自の e コマース ソリューションを展開しようとしています。Pragmatic Web Development with Rails book で説明されているデポ アプリケーションの拡張。

現在、付属品を検討中です。基本的に、Product と Product_Variants は、添付された写真に Product_Shots を使用する必要があります。すべての製品に prodcut_variants があるわけではないため、product_variants の値が空の product_shots テーブルになる可能性があります。これを実装するためのより良いアプローチはありますか?

製品モデル:

製品バリアントモデル

Product Shotsモデル (ペーパークリップで処理)

0 投票する
1 に答える
415 参照

ruby-on-rails - Railsコールバックbefore_createが壊れたafter_validateが機能する

ブール列を追加したPrinterモデルがあります。masterプリンターbelongs_to :restaurantmasterフラグは、このプリンターがこのレストランのプライマリ プリンターであるかどうかを示します。

Printer モデルにメソッドがあります。

このコールバックを設定します。before_create :set_master_on_create

このメソッドを として実行before_createすると、新しいプリンターの作成は失敗します。コールバックを変更しafter_validationて新しいオブジェクトを作成すると、:on => :createオプションを使用しても問題なく動作します。

Rails はオブジェクトをフリーズするので、特定の時点以降は値を変更できなくなりますRollbackか? どんな助けでも感謝します。

Rails 3.2.2 と sqlite を開発モードで使用しています。