私はちょっと調べてみるだけです。 odoo 8のattrsに基づいてフィールドを非表示にすることはできますが、同じことをPythonコードで行う方法があります。以下のコードは次のとおりですので、これは作業を行いフィールドodooをpython onchangeメソッドで非表示にする
<field name="test" attrs="{'invisible':[('role', '=', 'testrole')]}" />
(手段フィールド名の役割は、値「テストの役割」を持っている場合、フィールドを非表示になります) それから私はとしての役割フィールド上のメソッドのonchangeでのpythonを使用して同じ機能を実現しようとしました下記:私のモデルで
<field name="role" on_change="hide(role)"/>
:
def hide(self,cr,uid,ids,role) :
res = {'value':{}}
if role == 'testrole':
res['value']['test']['attrs']['invisible']=True
return res
しかし、これは、 任意の提案を動作しませんか?
ありがとう、
おかげCZoellnerの変化に対するメソッドの実装を探しています、私はフィールドを必要とするだろうということですデータベース。それは解決策にすぎません。 – user280960
実際には、このソリューションはデータベースのフィールドなしで動作します。 'hide'は計算されますが、決してデータベースには格納されません。 – CZoellner
OhhありがとうCZoellner、私はこれを試してみます。ありがとうございました – user280960