2016-04-02 2 views
0

私はレールモデルを生成するために使用するコマンドです新しいテーブルを作成しません生成します余分な属性があり、生成されたdbの移行もありません。それはなぜそうですか?Railsはsubsclassここ

答えて

1

ActiveRecordは、継承階層を単一のテーブルにマッピングすることをサポートしています。この場合、親ARクラスから子クラスを作成するときにデータベースに余分なフィールドを作成することはできません。あなたは、端末内

rails g scaffold --help 

を書く場合 あなたは、足場についての詳細を見ることができます。 ARモデルの場合、次のようになります。

ActiveRecord options: 
     [--migration], [--no-migration] # Indicates when to generate migration 
             # Default: true 
     [--timestamps], [--no-timestamps] # Indicates when to generate timestamps 
             # Default: true 
     [--parent=PARENT]     # The parent class for the generated model 
     [--indexes], [--no-indexes]  # Add indexes for references and belongs_to columns 
             # Default: true -t, [--test-framework=NAME]   # Test framework to be invoked 
             # Default: test_unit 

これは、使用できるオプションの完全なリストです。

+0

私は、モデル/マイグレーションファイルを修正することができますが、追加のフィールドを持つサブクラスモデルを生成するためのrailsコマンドがあることは知っていますか? – boh

+0

ええ、ありがとう、私はいくつかの研究を行い、継承を行うためにstiのアプローチを選択するとき私たちのモデルでは使用しない余分なフィールドを持っていることを確認します。 – boh

関連する問題