問題タブ [single-table-inheritance]
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 - オブザーバーとSTIを使用しようとしたときのTypeError
アチーブメントシステムの実装に関するスレッド( RoRでアチーブメントシステムを実装する方法にあります)をフォローしようとしていますが、オブジェクトが保存されてメソッドが付与されると、TypeErrorが発生しますか?呼び出されます。エラーは次のようになります。
モデルロジックは、前の質問で定義されたものとまったく同じです。
ここで何が起こっているのか分かりますか?
更新: 以下の情報に基づいて、私は抽象化を削除し、今のところ各コントローラーに直接アワードメソッドを配置することになりました。あまり乾燥していないので、もっと遊んでみる時間があれば、もう一度抽象化してみますが、今のところはうまくいきます。例:
ruby-on-rails - ルートは異なりますが、Railsのモデルサブクラスに同じコントローラーを使用しています
STIを使用したサブクラスを持つモデルプロパティがあります。
サブクラスに応じて異なるビューパーシャルのみで同じコントローラーを使用したいと思います。
コントローラー内のサブクラスを識別して正しいビューをレンダリングする方法がわからない場合を除いて、検出されます。つまり。/ restaurantsは機能し、プロパティコントローラーに移動しますが、Restaurantサブクラスが必要かどうかわかりません。
ruby-on-rails - Rails での STI の回避
この状況でサブクラスを持つ理由が本当にわかりません。位置オブジェクトの動作は同じです。それらの唯一のポイントは、関連付けを簡単にすることです。また、データベースのインデックスを小さくできるため、データを文字列ではなく int として保存することをお勧めします。
私は次のようなものを想像していますが、考えを完成させることはできません:
このコードでは、次のことが失敗し、基本的に役に立たなくなります。
has_one 宣言の :conditions オプションを 1 に等しい型に変換する方法がないため、これは明らかです。
これらのフィールドが表示されるビューのどこにでもIDを埋め込むことができますが、これも間違っているようです:
余分なサブクラスを回避したり、LOCATION_TYPES アプローチを機能させる方法はありますか?
私たちの特定のケースでは、アプリケーションは非常に位置を認識しており、オブジェクトはさまざまな種類の位置を持つことができます。これらすべてのサブクラスを必要としないのは奇妙ですか?
あなたが持っている提案は大歓迎です.もしあなたが望むなら私は狂っていると言ってください.しかし、あなたはアプリ/モデルの周りに浮かぶ10以上の異なる位置モデルを見たいですか?
linq - LINQtoSQL とビジネス オブジェクトを使用した継承された型の保存と取得
抽象 EventBase クラスといくつかの継承されたイベント タイプ、および Event クラスがあります。各イベント タイプには、固有の列があります。
私のデータ層には、単純に次のことを行う GetEvents メソッドがあります。
EventType は、EventTypes テーブルに一致する列挙型です
GetEvents(EventType type) と GetEvent(int id, EventType type) のようなことをしたい..
スイッチが最適なアイデアかどうかはわかりませんが、ディクショナリを正しく使用してデータの取得とオブジェクトの作成を特定の型にマップする方法もわかりません。
2 番目の質問は、ビジネス オブジェクトから L2S テーブルへのデータの保存に関するものです。基本的には上記と同じ質問です。
これが理にかなっていることを願っています:)
ruby - 継承のあるモデルでRuby Activescaffold findでさまざまなモデルを返そうとしています
上記のことは可能ですか?
ありがとうございました!
ruby-on-rails - NoMethodErrorを返すユニットテストでHABTMフィクスチャを使用したRails単一テーブル継承:未定義のメソッド「singularize」
次のようなモデル構造を想像してください。
models/cross_sell_promotion.rb
models/promotion.rb
および表は次のとおりです。
次に、次のようなフィクスチャがあります。
単体テストを実行すると、次のエラー メッセージが返されます。
たまたま同様の経験がある場合、またはこれを修正する方法を知っている場合、または少なくとも間違っていると思われることを知っている場合はお知らせください。何でも試す準備ができています!
どうもありがとう、返信することを躊躇しないでください... 本当にここで必死です!
java - Hibernate: 単一テーブルでの親子関係
Hibernate に関連する次の問題についての指針はほとんどありません。これは、親子関係を持つ単一のデータベース テーブルを使用して継承を実装することに関連しています。例えば:
ここで、managerId列は null であるか、Employeeテーブルの別の行を指している可能性があります。ビジネス ルールでは、従業員はすべての報告先について知り、上司について知る必要があります。ビジネス ルールでは、行が null managerIdを持つことも許可されます(組織の CEO にはマネージャーがいません)。
この関係を Hibernate でどのようにマッピングすればよいでしょうか。標準の多対 1 の関係はここでは機能しません。特に、対応する「従業員」エンティティ クラスとしてだけでなく、「マネージャー」、「アシスタント マネージャー」、「エンジニア」などの複数のクラスとしてエンティティを実装したい場合は、それぞれ「従業員」スーパー エンティティ クラスから継承します。 、実際にはすべてに適用されない属性を持つエンティティもあります。たとえば、「マネージャー」は特典を取得し、他のエンティティは取得しません (対応するテーブル列はもちろん null を受け入れます)。
サンプルコードをいただければ幸いです (Hibernate 3 アノテーションを使用するつもりです)。
ruby-on-rails - 複数のタイプのSTIを持つモンゴマッパー?
基本モデルから継承した一連のモデルがありますProperties
例えばBars, Restaurants, Cafes, etc.
私が疑問に思っているのは、レコードがたまたまバーとレストランの両方である場合のケースをどうするかということです。単一のオブジェクトが両方のモデルの属性を継承する方法はありますか? そして、キー :_type でどのように機能しますか?
ruby-on-rails - 同じコントローラーで STI パスを使用する
STI を使用していますが、モデルごとに個別のコントローラーを用意する必要がありますか? STI 関係の 1 つのモデルに対して作成および編集アクションのみを使用する状況がありますが、フォームを実行しようとすると「未定義のメソッド」エラーが発生します。より具体的には、List から継承する 2 つのモデルがあります。
これらのアクションを処理するリストコントローラーがありますが、フォームを使用してRegularListで新しいモデルを作成するだけです。つまり、form_for を使用して新しい List オブジェクトを作成する唯一の状況は、RegularList を使用する場合です。私がやりたいことは次のようなものです:
それ以外の場合、新しいリストを作成するためのルートは regular_list/new のように見えますが、単に list/new にしたいと考えています。考え?
編集:問題は、上記のコードを使用すると、「未定義のメソッド」エラーが発生することです。私の見解は次のようになります。
...したがって、Lists コントローラーで RegularList オブジェクトを使用する際に問題があるようで、これが私が対処しようとしている主な問題です。申し訳ありませんが、それは明確な説明ではありませんでした。
inheritance - MySQL Workbench を使用してテーブルの継承をモデル化する方法はありますか?
MySQL Workbench を使用してテーブルの継承をモデル化する方法はありますか?
ERD をこの画像の左側のようにしたいと思います。