콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다

I'm trying to create user group that allow the user which has this group to update price of products in pricelist , and prevent others users whic doesn't have this group .
but when the user which doesn't has the user group update the price the error occurs instead of showing message "You don't have permission to edit price list items."

This is the code of user group:

<record id="group_price_list_editor" model="res.groups">
<field name="name">Price List Editor</field>
<field name="category_id" ref="base.module_category_sales_management"/>
</record>




This the code of python:
from odoo import api, fields, models, _
class ProductPrice(models.Model):
_inherit = 'product.pricelist.item'

@api.model
def create(self, vals):
if self.env.user.has_group('branch.group_price_list_editor'):
return super(ProductPrice, self).create(vals)
else:
raise Warning("You don't have permission to create price list items.")

def write(self, vals):
if self.env.user.has_group('branch.group_price_list_editor'):
return super(ProductPrice, self).write(vals)
else:
 
raise Warning("You don't have permission to edit price list items.")


This is the error appear:

Traceback (most recent call last):
  File "/home/odoo/src/user/branch/models/inherited_product.py", line 21, in write
    raise Warning("You don't have permission to edit price list items.")
Warning: You don't have permission to edit price list items.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/odoo/src/odoo/odoo/http.py", line 1583, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/home/odoo/src/odoo/odoo/service/model.py", line 134, in retrying
    result = func()
  File "/home/odoo/src/odoo/odoo/http.py", line 1610, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/home/odoo/src/odoo/odoo/http.py", line 1807, in dispatch
    result = self.request.registry['ir.http']._dispatch(endpoint)
  File "/home/odoo/src/odoo/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
    result = endpoint(**request.params)
  File "/home/odoo/src/odoo/odoo/http.py", line 696, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/home/odoo/src/odoo/addons/web/controllers/dataset.py", line 42, in call_kw
    return self._call_kw(model, method, args, kwargs)
  File "/home/odoo/src/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/home/odoo/src/odoo/odoo/api.py", line 461, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/home/odoo/src/odoo/odoo/api.py", line 448, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/home/odoo/src/odoo/odoo/models.py", line 3737, in write
    field.write(self, value)
  File "/home/odoo/src/odoo/odoo/fields.py", line 4215, in write
    return self.write_batch([(records, value)])
  File "/home/odoo/src/odoo/odoo/fields.py", line 4236, in write_batch
    return self.write_real(records_commands_list, create)
  File "/home/odoo/src/odoo/odoo/fields.py", line 4394, in write_real
    comodel.browse(command[1]).write(command[2])
  File "/home/odoo/src/user/branch/models/inherited_product.py", line 23, in write
    raise Warning("You don't have permission to edit price list items.")
Warning: You don't have permission to edit price list items.

The above server error caused the following client error:
null




아바타
취소
관련 게시물 답글 화면 활동
1
5월 23
2278
2
9월 24
1625
1
4월 24
1647
5
2월 24
18186
0
8월 23
1538