1

私はプロセスについて読みましたが、それらはユーザーにとって大きな助けになると思います。次に、実験モジュールのプロセスを作成します。私はsale_process.xmlを調べていますが、最初のレコードは販売モジュールを参照しています。どこにありますmodel_sale_orderか?

<record id="process_process_salesprocess0" model="process.process">
    <field eval="1" name="active"/>
    <field name="model_id" ref="sale.model_sale_order"/>
    <field eval="&quot;&quot;&quot;Sales&quot;&quot;&quot;" name="name"/>
</record>
4

1 に答える 1

2

ir_model_dataこれは、 「model_sale_order」という名前と「sale」モジュールという名前のレコードを指していると思います。そのレコードはir_model、各フィールドの子レコードを持つsale_orderテーブルのレコードを指します。これらのレコードはすべて、sale_orderクラスで定義された詳細に基づいて生成されます。各モデルクラスの重要な機能の1つは、_columnsディクショナリです。開発者向けドキュメントのオブジェクト、フィールド、およびメソッドの章には、かなり良い説明があります。

標準の「sale.order」モデル(継承)にいくつかのフィールドを追加する場合、モジュールは同じ「sale.model_sale_order」レコードを使用し、新しいフィールドにさらにいくつかの子レコードを追加します。プロセス定義に追加するときに、引き続き「sale.model_sale_order」を参照できます。

別のモデルを作成していて継承しない場合は、モデルクラスで「sale.order」という名前を使用しないでください。'mysale.order'のような名前を使用します。これにより、新しい'mymodule.model_mysale_order'レコードが自動的に生成され、プロセス定義で参照できます。

于 2012-05-01T17:44:58.123 に答える