問題タブ [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 - Railsのbegins_toと単一テーブルの継承が動作しない
私はBike
モデルとモデルを持っていComponent
ます。、などからいくつかのモデルが継承されComponent
ます。Frame
Chain
Crankset
フォームを送信すると、パラメータは次のようになります。
私のコントローラーでは、次のコードが壊れています。
フォームをハックして次のパラメーターを生成すると、機能します。
ここに私のモデルがあります:
単一テーブルの継承が機能しています-問題なく呼び出すことができFrame.first
ますComponent.all
。
私は気が狂っていますか?ネストされたパラメーターは通常の規則ではありませんか? それが次のように生成されます。
私は何を間違っていますか??
.net - 階層ごとの単一テーブルのマッピングエラー
次のマッピングを取得しました
と:
次のエラーが発生します
Module.CRM.Models.CallRecordの識別子が見つかりません。
弁別器を指定していませんか?
編集
さらに調査を行いました。ディスクリミネーターは私が使用すべきものではありません。crm_call_recordsのcall_record_idは、call_recordsのidを指します。マッピングファイルはどのように見えるべきですか?
ruby-on-rails - 単一テーブル継承の counter_cache
counter_cache が単一テーブルの継承で機能するかどうか疑問に思っています。
これらのモデルの場合:
それで、次のカウンターは機能しますか?
- それらのすべてが機能します
- それらのどれも機能しません
questions_count
仕事だけ- のみ
simple_questions_count
とcomplex_questions_count
どれ?3枚目ですが、あと4枚欲しいです。4 でない場合、4 を機能させるにはどうすればよいですか?
===更新===
次に例を示します。
だから今私は欲しい:
私の質問は、の基本的な動作は何:counter_cache => true
ですか?単一テーブルの継承に適用することは可能ですか?
ruby-on-rails - Rails 3単一テーブルの継承とhas_manyの質問
親クラスにも has_many 関係が含まれているRails 3で単一テーブル継承モデルをセットアップしようとしています。残念ながら、私はそれを機能させることができません。例として、次の 3 つのクラスを示します。
そして、これをセットアップするために使用される移行は次のとおりです。
このように設定して、新しい SportsArticle を作成しようとすると、たとえば次のようになります。
私は常に次のエラーが発生します。
「TypeError: 文字列を整数に変換できません」
この問題を解決する方法がわかりません。オンラインで解決策を見つけようとしましたが、役に立ちませんでした。STI モデルを使用した経験のある人は何か間違っていると思いますか? 問題の診断に役立つ場合は、create メソッドに関するドキュメントへのリンクを次に示します 。
ruby-on-rails - Railsで単一テーブル継承を使用して単一の作成フォームを作成する
私は Rails で STI を使用しており、Car、Truck など、さまざまなタイプのサブクラスを持つ Vehicle オブジェクトを持っています。これは単純なアプリ用なので、この場合は STI で問題なく動作しますが、あらゆる種類の車両レコードを作成できる単一のフォームを作成するのに問題があります。
次のルーティングを使用します。
/cars と /trucks ルーティングをセットアップして、両方が同じフォームを指すようにすることができます。ただし、フォームは車両コントローラーを指しており、フォームの Vehicle オブジェクトを生成しているため、/cars url が Car オブジェクトを作成する必要があることを知る方法がありません。
/cars が Car.new または Report.new(:type => "Car") を使用してフォームのオブジェクトを作成することを本質的に知っているフォームを指すルーティング システムをセットアップしようとしています。/vehicles/:subclass のようなルーティング システムを動作させ、コントローラで params[:subclass] を使用することを考えましたが、そのようなルーティングを行う方法がわかりませんし、Rails によって引き起こされる他のルーティング エラーを回避することもできません。 「STIマジック。
URL を解析して値を取得することはいつでもできますが、それは危険で危険な方法のように思えます。
これを行うためのRailsの方法について誰かがアドバイスや経験を持っているかどうか知りたい. ありがとう!
ruby-on-rails - Rails で STI を使用すると ActiveRecord::SubclassNotFound エラーが発生する
Ruby on Rails 2.3.10 を使用しています。私はクラスを持っていSchool
ます。私は STI を使用して、いくつかのサブクラスを提供してPrimarySchool
いSecondarySchool
ますUniversity
。
PrimarySchool.first
期待どおりにPrimarySchool.last
動作します。SecondarySchool.first
期待どおりにSecondarySchool.last
動作します。University.last
動作します。
ただし、例外を発生University.first
さUniversity.all
せます。ActiveRecord::SubclassNotFound
生成された SQL は正しいです。
私は何が欠けていますか/間違っていますか?
ruby-on-rails - Rails2.3でのクラス継承または単一テーブル継承
次のシナリオがありますが、クラス継承と単一テーブル継承のどちらを使用すべきかわかりません。
私がやりたいのは、それぞれの異なるリストタイプを異なるクラスにすることです。問題は、それを行う場合、オブジェクト/クラスmain_list_id
にknown_list_id
、、を追加する必要があるということです。これは面倒なようです。私は次のようなことをすることができますか?regular_list_id
Word
そして次のようなもの:
@user.main_list.find_by_name("MainList")
?
これに関する唯一の問題は、誰かがRegularList
「MainList」という名前を付ける可能性があることです。
ruby-on-rails - RailsSTIアソシエーションとネストされたリソース
わかりました、それで私はここに私が理解できない奇妙なパターンを持っています。
CallListをベースモデルとしてSTIを設定し、City&Stateを継承しています。都市は州に属しています(州には多くの都市があります)。
キャンペーンには多くのコールリストがあるので、それらすべてを表示したいと思います。私はcampaign.call_listsをループし、時にはCities、時にはStatesを取得します。それらにリンクしたいときは
これらのルートがある場合、これは正常に機能します。
ただし、州内の都市をネストすると、link_toヘルパーは適切なルートを見つけられません。これを行う簡単な方法はありますか、それとも手動でパスヘルパーを構築する必要がありますか?
ruby-on-rails - rails:作成中にSTIタイプを設定しようとしているときに、これらの保護された属性に一括割り当てすることはできません
RailsとRubyの学習を始めたばかりですので、これがあまりにも馬鹿げている場合はご容赦ください。
私のアプリにはいくつかの異なるAppModuleタイプがあり、動作は異なりますがデータは類似しているため、単一テーブル継承を使用してそれらを保存します。
ただし、ユーザーが必要なタイプを明示的に選択できるようにしようとするとapp_modules/new.html.erb
、警告が表示されWARNING: Can't mass-assign these protected attributes: type
ます。関連するコードは次のとおりです。
モデルファイルで明示的に設定しようとattr_accessible :type
しましたが、機能しませんでした
レール2.3.8とルビー1.8.7を使用しています。
どんな助けでも大歓迎です、ありがとう...
ruby-on-rails - 一部のサブクラスでテンプレートが欠落している場合、レールはスーパークラスのテンプレートにリダイレクトします
Rails プロジェクトに Single-Table-Inheritance を使用しています。そして、スーパークラスに実装することで、サブクラス間でいくつかの共通関数の機能を共有できるかどうか疑問に思っていました。
スーパークラスのビューもリサイクルできますか? それとも、一般的な関数の新しいビューを作成する必要がありますか? これはあまり乾燥していません。DRYアプローチとは?を編集する必要がありますか、routes.rb
またはこれを動的に達成する別の方法はありますか?
ベスト、E.