新手常见开发问题总结分享(更新中)
-
楼主,请教你一个问题。对context这个字典理解吗?
在sale.order.line的中
for this in self.browse(cr,uid,ids,context=context)
context['pricelist']=this.order_id.pricelist_id.id //这句话什么意思 -
楼主,请指教。context能说得详细点吗。context[]的作用,什么叫上下文信息。context到底是做什么的?
-
@fanzhang1990
context-上下文,顾名思义就是在客户端操作过程中的关联信息,其本身是一个字典。比如当你在一个列表中选择了多条记录,系统就会将你所选择的记录id放到 context中:context['active_ids'] =[所选记录ids]
当然在程序中我们也可以人为将关联信息放到contex中,这样在server端就可以根据context中的值做相应的处理,
比如:
创建订单时,每个客户可能有自己对应的pricelist,在订单行上选择产品时需要根据对应的pricelist来列示价格信息。这个时候我们就可以把当前选择客户的id,或其对应的pricelist id放在订单行的产品字段上的context,而当选择产品时所激发并调用 onchange函数时将此context传递给它,这样我们就能做相应的价格计算了。
context还可以被用来定义默认值等,用法很丰富,还是多看代码来了解 -
多谢指教
-
另外,假如我想在自己的测试模块中参考销售订单的视图,可以按下面这样基于系统视图进行继承和修改:
<record id="[color=orange]view_order_form1[/color]" model="ir.ui.view">
<field name="name">sale.order.form1</field>
<field name="model">sale.order</field>
<field name="type">form</field>
<field name="inherit_id" ref="[color=orange]sale.view_order_form[/color]"/>
<field name="arch" type="xml">
<data>
<button name="order_confirm" position="after">
<button name="order_test" string="测试" icon="gtk-apply"/>
</button>
</data>
</field>
</record>
但结果发现系统原来的销售订单界面也被修改了,而我期望的效果是我继承添加的这个视图只需要给我自己模块用就可以了。