2011-07-22 4 views
1

親引数は、これらすべての場合には、無視されます。プログラムでactive_recordジェネレータを呼び出す:親引数を渡す方法は?

Rails::Generators.invoke("active_record:model", [name, ["list_order:string", "name:string"], ["parent=Ecm::Toplist::Base"]]) 
Rails::Generators.invoke("active_record:model", [name, ["list_order:string", "name:string"], ["--parent=Ecm::Toplist::Base"]]) 
Rails::Generators.invoke("active_record:model", [name, ["list_order:string", "name:string"], "parent=Ecm::Toplist::Base"]) 
Rails::Generators.invoke("active_record:model", [name, ["list_order:string", "name:string"], "--parent=Ecm::Toplist::Base"]) 

は、これはバグ、または私は何かが足りないのですか?

+0

どのようにレール:: Generators.invoke( 'について "active_record:モデル"、[名、 "list_order:文字列"、 "名:文字列" 、 "--parent = Ecm :: Toplist :: Base"]) ' – Dogbert

+0

このような引数を渡すと、マイグレーションは作成されません:(実際には、親を正しく設定します。 –

答えて

0

正しい方法は、指定したらthisによると、

Rails::Generators.invoke("active_record:model", [name, "list_order:string", "name:string"], { parent: "Ecm::Toplist::Base"}) 

ことしかし、注意してくださいします:親、移行は呼び出されません。

になり、移行したモデルを生成するための正しい方法

Rails::Generators.invoke("active_record:model", [name, "list_order:string", "name:string"], {migration: true, timestamps: true}) 
関連する問題