'cost_method'、 'product_type'、 'product'モジュールの 'valuation'などのいくつかのプロパティフィールドのデフォルト値を変更しようとしていますが、プロパティ以外のフィールドのみを変更できます。Odoo(旧API)のプロパティフィールドのデフォルト値を変更するにはどうすればよいですか?
私が試したこと: - 新しいモジュールを作成し、 'product.template'モデルを継承し、 '_default'ディクショナリのみをオーバーライドしましたが、動作しませんでした。
- 同じ名前で別のタイプ(選択)のプロパティを持たない新しいフィールドを作成しましたが、どちらもこの作業を行いませんでした。
コード:
_name = "product.template"
_inherit = "product.template"
_COLUMNS = {
'cost_method':fields.selection([( '平均'、 '平均価格')、( '標準'、「標準( 'product'、 'Stockable Product')、( 'consu'、 'Consumable')、( '' '' '' '' '' '' '' '' '' ' help = "消耗品は在庫を管理しない製品であり、サービスは企業や個人が提供する非物質的な製品です。") 、 'comp any_id ':fields.many2one(' res.company」、 '会社'、= Falseの必要) }
_defaults = {
'company_id': False
,'type' : 'product'
, 'cost_method': 'average'
, 'barcode':'555'
}
私はこれをすべて行いました。私が前に言ったように、私のコードはプロパティフィールドを除いて正常に動作します。また、プロパティのフィールドでも、その型を 'Char'に変更すると動作します。しかし、タイプを「Selection」に変更すると、Odooはプロパティフィールドであると考え続け、 'ir_property'テーブルから値を取得しようとします。そして、それらの値を 'ir_property'テーブルから削除すると、Odooは空白値を返します。問題は今です:古いフィールドを削除するには?どのように私のデフォルトを取るようにOdooを説得し、 'ir_property'からそれらをフェッチしないのですか? – Ehab
私の変更を見ましたか? – Nope
'type'は使用しましたが、 'cost_method'は使用しませんでした。とても混乱するような! – Ehab