AssertionError: External ID must be fully qualified in odoo
AssertionError: External ID must be fully qualified in odoo
我正在研究 Odoo CRM。我继承了 CRM.lead 我添加了一些功能 我为它们添加了新的用户角色。
当我给定我创建的用户角色时,管理工作正常,但现在它抛出错误。
文件“.........base/res/res_users.py”,在 has_group 断言 group_ext_id 和 '.'在 group_ext_id、"External ID must be fully qualified"
"AssertionError: External ID must be fully qualified"
我试过了,但不行。
如果您知道您的宝贵建议,请帮助我。
我认为 res.users
的 has_group
方法没有获得完全限定的组 ID。我不知道那里发生了什么,但您可以通过覆盖 has_group
方法来绕过该错误。
为此,首先创建一个继承自定义模块中 res.users
的新模型。代码如下:
class Users(osv.osv):
_inherit = 'res.users'
_columns = {}
def has_group(self,cr,uid,group_ext_id):
if '.' in group_ext_id:
users_group1 = [x.id for x in self.pool['ir.model.data'].get_object(cr, uid, 'bms', 'xml_id_group1').users]
users_group2 = [x.id for x in self.pool['ir.model.data'].get_object(cr, uid, 'bms', 'xml_id_group2').users]
if uid in users_group1:
return super(Users,self).has_group(cr,uid,'module.xml_id_group1')
elif uid in users_group2:
return super(Users,self).has_group(cr,uid,'module.xml_id_group2')
else:
return super(Users,self).has_group(cr,uid,'base.group_user')
else:
return super(Users,self).has_group(cr,uid,group_ext_id)
代替 xml_id_group1
和 xml_id_group2
放置您遇到上述错误的组的组 ID。
希望对您有所帮助!
我正在研究 Odoo CRM。我继承了 CRM.lead 我添加了一些功能 我为它们添加了新的用户角色。
当我给定我创建的用户角色时,管理工作正常,但现在它抛出错误。
文件“.........base/res/res_users.py”,在 has_group 断言 group_ext_id 和 '.'在 group_ext_id、"External ID must be fully qualified"
"AssertionError: External ID must be fully qualified"
我试过了,但不行。
如果您知道您的宝贵建议,请帮助我。
我认为 res.users
的 has_group
方法没有获得完全限定的组 ID。我不知道那里发生了什么,但您可以通过覆盖 has_group
方法来绕过该错误。
为此,首先创建一个继承自定义模块中 res.users
的新模型。代码如下:
class Users(osv.osv):
_inherit = 'res.users'
_columns = {}
def has_group(self,cr,uid,group_ext_id):
if '.' in group_ext_id:
users_group1 = [x.id for x in self.pool['ir.model.data'].get_object(cr, uid, 'bms', 'xml_id_group1').users]
users_group2 = [x.id for x in self.pool['ir.model.data'].get_object(cr, uid, 'bms', 'xml_id_group2').users]
if uid in users_group1:
return super(Users,self).has_group(cr,uid,'module.xml_id_group1')
elif uid in users_group2:
return super(Users,self).has_group(cr,uid,'module.xml_id_group2')
else:
return super(Users,self).has_group(cr,uid,'base.group_user')
else:
return super(Users,self).has_group(cr,uid,group_ext_id)
代替 xml_id_group1
和 xml_id_group2
放置您遇到上述错误的组的组 ID。
希望对您有所帮助!