【问题标题】:TypeError: create() takes exactly 2 arguments (1 given) while trying to create a new recordTypeError: create() 在尝试创建新记录时恰好采用 2 个参数(给定 1 个)
【发布时间】:2021-03-16 23:53:34
【问题描述】:

我正在尝试在按钮调用的模型方法中以编程方式创建新的采购订单。

我这样做:

@api.multi
def do_create_purchase_order(self):
    purchase_order = self.env['purchase.order'].create()

但我明白了:

TypeError: create() takes exactly 2 arguments (1 given)

如何创建新的采购订单?

【问题讨论】:

    标签: odoo odoo-10


    【解决方案1】:

    我认为您错过了创建采购订单的 vals,

    因为创建方法需要创建记录所需的值列表所以试试这个,

    purchase_order = self.env['purchase.order'].create({
            'partner_id': your_cusromer'id,
            'currency_id': specific_currency,
            'order_line': [
                (0, 0, {
                    'name': product.name,
                    'product_id': product.id,
                    'product_qty': quantity,
                    'product_uom': product.uom_po_id.id,
                    'price_unit': price_unit,
                    'date_planned': date,
                    'taxes_id': [(6, 0, product.supplier_taxes_id.ids)] if set_tax else False,
                })],
             'date_order': fields.Date.today(),
        })
    

    我希望这个例子能满足你的要求。

    谢谢。

    【讨论】:

      猜你喜欢
      • 2023-03-28
      • 2013-05-26
      • 1970-01-01
      • 2015-06-06
      • 1970-01-01
      • 2018-02-22
      • 1970-01-01
      • 1970-01-01
      • 2012-02-14
      相关资源
      最近更新 更多