我在采购订单表单 View 中添加了一个名为“返回”的按钮,该按钮显示一个向导 View ,我可以将产品返回到该 View ,一切正常,但我需要知道如何获取自助 PO 的产品线,
class returnfromorder(models.TransientModel):
_name = 'returnfromorder'
picking_id = fields.Many2one('stock.picking')
product_return_moves = fields.One2many('stock.return.picking.line', 'wizard_id', 'Moves')
move_dest_exists = fields.Boolean('Chained Move Exists', readonly=True)
original_location_id = fields.Many2one('stock.location')
parent_location_id = fields.Many2one('stock.location')
location_id = fields.Many2one(
'stock.location', 'Return Location',
domain="['|', ('id', '=', original_location_id), ('return_location', '=', True)]")
@api.multi
def buto(self):
products=self.env['purchase.order'].order_line
for product in products.search([]):
pro = product.product_id
print(pro)
我在表单 View 的按钮中使用方法buto,以便我可以在将值添加到行中之前测试和打印这些值
这里是 XML
<!-- Inherit Form View to Modify it -->
<record id="wizard_return_form" model="ir.ui.view">
<field name="name">wizard.return.form</field>
<field name="model">returnfromorder</field>
<field name="arch" type="xml">
<form string="return">
<sheet>
<group>
<field name="picking_id"/>
<field name="product_return_moves"/>
<field name="move_dest_exists"/>
<field name="original_location_id"/>
<field name="parent_location_id"/>
<field name="location_id"/>
<button name="buto" class="oe_highlight" type="object" string="ObjectButton"/>
</group>
</sheet>
<footer>
<button string="Skip" class="btn-secondary" special="cancel"/>
</footer>
</form>
</field>
</record>
<act_window id="return_wizard"
name="Add return"
res_model="returnfromorder"
view_mode="form"
target="new"
view_id="wizard_return_form"
/>
任何帮助将不胜感激
最佳答案
您可以从上下文中获取向导中的当前记录 ID。
例如:
self._context.get('active_ids', [])
之后,您可以浏览这些记录,例如
for purchase in self.env['purchase.order'].browse(self._context.get('active_ids', []))
XXXXXX
execute your logic
关于python - 如何从odoo中的当前表单 View 获取记录到向导中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59457152/