我正在尝试修改合作伙伴的销售价格表的默认值(字段property_product_pricelist
,选项卡销售和购买,模型res.partner
)。似乎这个默认值是通过XML引入的(因为该字段的类型为 property ),将记录添加到ir.property
模型中:
<record id="list0" model="product.pricelist">
<field name="name">Public Pricelist</field>
<field name="type">sale</field>
</record>
<record id="ver0" model="product.pricelist.version">
<field name="pricelist_id" ref="list0"/>
<field name="name">Default Public Pricelist Version</field>
</record>
<record id="item0" model="product.pricelist.item">
<field name="price_version_id" ref="ver0"/>
<field name="base" ref="list_price"/>
<field name="sequence">1000</field>
<field name="name">Default Public Pricelist Line</field>
</record>
<!--
Property
-->
<record forcecreate="True" id="property_product_pricelist" model="ir.property">
<field name="name">property_product_pricelist</field>
<field name="fields_id" search="[('model','=','res.partner'),('name','=','property_product_pricelist')]"/>
<field eval="'product.pricelist,'+str(ref('list0'))" name="value"/>
</record>
所以我猜(我没试过),如果你修改这条XML记录,你会改变默认值,例如:
<record forcecreate="True" id="product.property_product_pricelist" model="ir.property">
<field name="name">property_product_pricelist</field>
<field name="fields_id" search="[('model','=','res.partner'),('name','=','property_product_pricelist')]"/>
<field eval="'product.pricelist,'+str(ref('my_default_pricelist'))" name="value"/>
</record>
问题是我想根据其他字段(user_id
)引入不同的默认值。我的意思是,如果user_id
是ID为{em> 1 的res.users
,我希望公共价目表作为默认价格表,否则,我想要价目表由我(my_default_pricelist
)创建的默认值。
有人可以帮助我吗?
答案 0 :(得分:0)
如果你想要条件默认值,你必须转移到Python。
尝试扩展模型并重新定义字段,但这次使用 <div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary active">
<input type="radio" id="physical-option" onclick="alert('Physical!')" checked="checked" /> Physical
</label>
<label class="btn btn-primary">
<input type="radio" id="scenery-option" onclick="alert('Scenery!')" /> Scenery
</label>
</div>
参数。 fnct=compute_method
是每次运行以设置字段默认值的方法。
compute_method
字段正在使用的property
类是property_product_pricelist
类的扩展。转到function
并找到openerp/osv/fields.py
类的定义并查看参数。