向openerp中的模块添加安全性时出错
我已经在openerp中创建了一个新模块,现在我想为该模块提供安全性,因为我已经在模块文件夹中创建了一个名为“security”的文件夹,并在其中创建了一个xml文件和ir.model.access.csv文件。我的目标是为我的模块创建两个角色,一个是经理,另一个是用户。 为此,我在xml文件中添加了以下代码向openerp中的模块添加安全性时出错,openerp,Openerp,我已经在openerp中创建了一个新模块,现在我想为该模块提供安全性,因为我已经在模块文件夹中创建了一个名为“security”的文件夹,并在其中创建了一个xml文件和ir.model.access.csv文件。我的目标是为我的模块创建两个角色,一个是经理,另一个是用户。 为此,我在xml文件中添加了以下代码 <record id="group_mat_mgmt_user" model="res.groups"> <field name="name">Us
<record id="group_mat_mgmt_user" model="res.groups">
<field name="name">User</field>
<field name="category_id" ref="base.module_category_mat_mgmt"/>
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
</record>
<record id="group_mat_mgmt_manager" model="res.groups">
<field name="name">Manager</field>
<field name="category_id" ref="base.module_category_mat_mgmt"/>
<field name="implied_ids" eval="[(4, ref('group_mat_mgmt_user'))]"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
使用者
经理
在视图部分,我添加了如下内容
<menuitem name="Materials Management" id="menu_mat_mgmt_root"
groups="group_mat_mgmt_manager,group_mat_mgmt_user"
sequence="80"/>
然后在csv上给出了权限,但我得到了这样一个错误
文件
“C:\OpenErp\OpenErp\openobject server\OpenErp\addons\base\ir\ir\u model.py”,
第850行,in_get_id raise ValueError('没有这样的外部id
当前在系统中定义:%s.%s%%(模块,xml_id))错误:
系统中当前未定义此类外部ID:
物料管理组物料管理经理
看起来您没有按顺序在openerp.py中添加文件。您是从CSV文件还是从View.xml文件获取此错误 您需要检查openerp.py文件。您可以在“数据”属性中分配第一个ir.model.access.csv/module_view.xml,然后分配module_security.xml。因此,它将首先检查ir.model.access.csv/module_view.xml,它将找不到您在security.xml中创建的组,该组将在加载ir.model.access.csv/module_view.xml文件后加载。您可以检查它,需要先传递security.xml,然后传递openerp.py中的ir.model.access.csv/module_view.xml文件
您也可以通过如下方式分配组进行检查:module_name.group_XML_ID,无论您在何处分配/使用这些组。是的,我已经在openerp.py文件中添加了它,例如“data”:[“security/mat\u mgmt\u security.XML',“security/ir.model.access.csv',]”,但我已经单独添加了视图XML,现在我已经添加了它,现在它正在工作。谢谢你:-)