微信小程序蓝牙开发教程带你探索物联网的便捷与魅力
908
2022-10-11
odoo 由动作传递默认值给新的模型
新的模型需要设置方法:
@api.model def default_get(self, fields): result = super(PortalShare, self).default_get(fields) result['res_model'] = self._context.get('active_model') result['res_id'] = self._context.get('active_id') record = self.env[result['res_model']].browse(result['res_id']) result['share_link'] = record.get_base_url() + record._get_share_url(redirect=True) return result
xml 中设置绑定关系:
如何在明细行中设置默认值:
@api.model def default_get(self, fields): result = super().default_get(fields) logging.info('result:{}'.format(result)) line_ids = self.rework_line_ids.create( dict( product_id=1, product_period=1, ) ) result['rework_line_ids'] = [(0, 0, dict( product_id=1, product_period=1, ))] return result
https://odoo.com/pt_BR/forum/ajuda-1/question/how-to-insert-value-to-a-one2many-field-in-table-with-create-method-28714 Avatar nazarii 22 agosto 2013 Best Answer This may help you:
(0, 0, { values }) link to a new record that needs to be created with the given values dictionary (1, ID, { values }) update the linked record with id = ID (write values on it) (2, ID) remove and delete the linked record with id = ID (calls unlink on ID, that will delete the object completely, and the link to it as well) (3, ID) cut the link to the linked record with id = ID (delete the relationship between the two objects but does not delete the target object itself) (4, ID) link to existing record with id = ID (adds a relationship) (5) unlink all (like using (3,ID) for all linked records) (6, 0, [IDs]) replace the list of linked IDs (like using (5) then (4,ID) for each ID in the list of IDs)
If you want to link new record to existing wizards than yes, you need to use (6, 0, [IDS]). But if you want to create new wizards on the fly and link to this record than use 'fee_ids': [(0, 0, values1), (0, 0, values2) ]
懂得,原来世界如此简单!
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。