diff options
| author | Nicolas Martinelli <nim@odoo.com> | 2015-09-25 10:17:54 +0200 |
|---|---|---|
| committer | Nicolas Martinelli <nim@odoo.com> | 2015-09-25 11:34:01 +0200 |
| commit | 5eb681bd037eb059f6d1250cc338183226b4e9bf (patch) | |
| tree | 2caf5fb5c390f17745223cdcca161d83c256b46e | |
| parent | 9577f4e4196ae86a66019c5b30f063fbf61c3e9a (diff) | |
[FIX] website_sale_digital: properly loop on self
| -rw-r--r-- | addons/website_sale_digital/product.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/addons/website_sale_digital/product.py b/addons/website_sale_digital/product.py index 84eaf263a45..3b010977cf8 100644 --- a/addons/website_sale_digital/product.py +++ b/addons/website_sale_digital/product.py @@ -10,11 +10,11 @@ class product_template(models.Model): @api.multi def _compute_attachment_count(self): IrAttachment = self.env['ir.attachment'] - prod_tmpl_attach_count = IrAttachment.read_group([('res_model', '=', 'product.template'), ('res_id', 'in', self.ids)], ['res_id'], ['res_id']) - prod_attach_count = IrAttachment.read_group([('res_model', '=', 'product.product'), ('res_id', 'in', self.product_variant_ids.ids)], ['res_id'], ['res_id']) - prod_tmpl_result = dict((data['res_id'], data['res_id_count']) for data in prod_tmpl_attach_count) - prod_attach_result = dict((data['res_id'], data['res_id_count']) for data in prod_attach_count) for ptemplate in self: + prod_tmpl_attach_count = IrAttachment.read_group([('res_model', '=', 'product.template'), ('res_id', 'in', ptemplate.ids)], ['res_id'], ['res_id']) + prod_attach_count = IrAttachment.read_group([('res_model', '=', 'product.product'), ('res_id', 'in', ptemplate.product_variant_ids.ids)], ['res_id'], ['res_id']) + prod_tmpl_result = dict((data['res_id'], data['res_id_count']) for data in prod_tmpl_attach_count) + prod_attach_result = dict((data['res_id'], data['res_id_count']) for data in prod_attach_count) ptemplate.attachment_count = prod_tmpl_result.get(ptemplate.id, 0) + sum(prod_attach_result.get(p.id, 0) for p in ptemplate.product_variant_ids) @api.model @@ -47,9 +47,10 @@ class product_product(models.Model): @api.multi def _compute_attachment_count(self): - read_count = self.env['ir.attachment'].read_group([('res_model', '=', self._name), ('res_id', 'in', self.ids)], ['res_id'], ['res_id']) - result = dict((data['res_id'], data['res_id_count']) for data in read_count) + IrAttachment = self.env['ir.attachment'] for product in self: + read_count = IrAttachment.read_group([('res_model', '=', product._name), ('res_id', 'in', product.ids)], ['res_id'], ['res_id']) + result = dict((data['res_id'], data['res_id_count']) for data in read_count) product.attachment_count = result.get(product.id, 0) @api.multi |
