小编maj*_*jid的帖子

如何在odoo 10中添加、更新和删除Many2many字段记录?

我正在一个向导中设置功能,它将执行以下操作:

  1. 添加新记录并链接到当前现有的 Many2many 字段。
  2. 更新当前现有 Many2many 字段的记录。
  3. 删除当前存在的 Many2many 字段。具有两个多对多字段的向导模型和实际模型
  4. customer_ids = fields.Many2many('res.partners', 'Customers')
  5. new_customers_ids = fields.Many2many('res.partners', '新客户')

在视图中,Customers_ids 是只读视图,其中 new_customers_ids 允许添加项目(客户)和删除。

当我从视图中添加新客户 (new_customers_ids) 但现在无法通过单击向导上的按钮(保存)更新 customers_ids(Customers ids) 时。如何通过在 (new_customers_ids) 中添加/删除和更新来添加/删除和更新 (customers_ids) 中的记录?

 @api.multi 
def applychanges(self):

    for record in self:
        customers = []
        new_customers = []
        for customer in record.customers_ids:
            customers.append(customer.id)
        customers = list(set(customers))

        for x in record.new_customers_ids:
            new_customers.append(x.id)
        new_customers = list(set(new_customers_ids))

        record.customers_ids = [(1, 0, new_customers)]
Run Code Online (Sandbox Code Playgroud)

我哪里做错了?

python odoo

3
推荐指数
1
解决办法
1万
查看次数

如何添加用于直接打印报告而不是在odoo中按ctrl + shift + p的打印按钮?

我正在打印报告,该报告将首先下载报告或直接按ctrl + hift + p进行打印。如何添加直接打印报告而不是按Ctrl + Shift + P的按钮?

openerp odoo-9 odoo-10

2
推荐指数
1
解决办法
2535
查看次数

如何根据odoo中的id和状态检查记录是否存在

在检查以前的记录是否未处于“开放”状态后,如何针对处于“开放”状态的患者创建新的检查记录。如果存在则显示错误,否则创建新记录。

下面的代码没有正确检查“if record.id:”中的记录是否存在,因此直接引发错误消息。

这是我的代码:

@api.multi
@api.constrains('status', 'patient_id')
def _checkstatus(self):
    res = []

    for record in self:
        if record.id:
            if record.status == 'open':
                raise ValidationError(_('You can not create new visit until patient checked out !' ))  
            else:
                res = self.status    
        else:
                res = self.status  

    return res            
Run Code Online (Sandbox Code Playgroud)

openerp

1
推荐指数
1
解决办法
5077
查看次数

如何仅在odoo中在窗体视图中显示按钮?

如何在视图模式下显示表单视图中的按钮,并在odoo中隐藏编辑和创建模式

python openerp

0
推荐指数
1
解决办法
506
查看次数

标签 统计

openerp ×3

python ×2

odoo ×1

odoo-10 ×1

odoo-9 ×1