循环Odoo服务器操作的预期单例错误

2024-04-25 04:36:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用odoowebui。你知道吗

我正在中创建一个新按钮销售订单创建RFQ的窗体。你知道吗

创建RFQ的服务器操作运行良好,但不适用于one2many order\u line字段。你知道吗

我得到了预期的单例错误

raise ValueError("Expected singleton: %s" % record)
    ValueError: <class 'ValueError'>: "Expected singleton: sale.order.line(706, 707)" while evaluating

下面是我用来循环浏览记录的代码:

for rec in record:
  if record.order_line:
    for line in record.order_line:
      if line.id:
        action = {
        "type": "ir.actions.server",
        "id": 601,
        "context": {"active_id": record.order_line.id, "active_model": "sale.order.line"}
        }

“id”:601操作也是通过UI定义的: action ID 601

我试着用这个答案: ValueError: Expected singleton: - Odoo v8

但仍然存在单例错误。你知道吗

我在代码中遗漏了什么,以便操作在one2many字段order_line的行中循环而不出现单例错误?你知道吗


Tags: 代码inidfor错误lineordersale
1条回答
网友
1楼 · 发布于 2024-04-25 04:36:38

国际海事组织的问题就在这一行"active_id": record.order_line.id

record.order_line将有一个记录集列表。你在上面做了一个正确的循环。line将表示单个记录集。所以你必须使用line。你知道吗

尝试使用以下代码:

for rec in record:
    for line in rec.order_line:
        action = {
            "type": "ir.actions.server",
            "id": 601,
            "context": {"active_id": line.id, 
                        "active_model": "sale.order.line"}
        }

相关问题 更多 >