Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 继承并替换ir.rule odoo 11_Xml_Security_Odoo 11 - Fatal编程技术网

Xml 继承并替换ir.rule odoo 11

Xml 继承并替换ir.rule odoo 11,xml,security,odoo-11,Xml,Security,Odoo 11,我想更改domaine force的“res\u partner\u rule\u private\u employee” 如何继承并替换为我的新代码 这是base/security/base_security.xml中的源代码 <!-- Security restriction for private addresses --> <record id="res_partner_rule_private_employee" model="ir.rule"&g

我想更改domaine force的“res\u partner\u rule\u private\u employee” 如何继承并替换为我的新代码

这是base/security/base_security.xml中的源代码

  <!-- Security restriction for private addresses -->
        <record id="res_partner_rule_private_employee" model="ir.rule">
            <field name="name">res.partner.rule.private.employee</field>
            <field name="model_id" ref="base.model_res_partner"/>
            <field name="domain_force">
                 ['|', ('type', '!=', 'private'), ('type', '=', False)]

            </field>
            <field name="groups" eval="[
                (4, ref('base.group_user')),
            ]"/>
            <field name="perm_read" eval="True"/>
            <field name="perm_write" eval="False"/>
            <field name="perm_create" eval="False"/>
            <field name="perm_unlink" eval="False"/>
        </record>

res.partner.rule.private.employee
['|',('type','!=','private'),('type','=',False)]
我想在我的/安全新模块中替换为此

<record id="rule_private_employee" model="ir.rule">
        <field name="name">res.partner.manager</field>
        <field name="model_id" ref="base.model_res_partner"/>
        <field name="domain_force"> 


          ['|','&', ('type', '!=', 'private'), ('type', '=', False),('is_student', '!=', True)]
        </field>
        <field name="groups" eval="[
            (4, ref('base.group_user')),
        ]"/>
        <field name="perm_read" eval="True"/>
        <field name="perm_write" eval="False"/>
        <field name="perm_create" eval="False"/>
        <field name="perm_unlink" eval="False"/>
</record> 

资源合作伙伴经理
['|','&',('type','!=','private'),('type','=',False),('is_student','!=',True)]

但是'&'字符在版本11中不起作用,如果它正确,则不会加载我的修改

&是XML中的一个特殊字符。您需要将其编码为&;。xml中的字段应为:

    <field name="domain_force"> 
      ['|','&amp;', ('type', '!=', 'private'), ('type', '=', False),('is_student', '!=', True)]
    </field>

['|','&;',('type','!=','private'),('type','=',False),('is_student','!=',True)]

有关XML编码的更多信息,请参见答案

&是XML中的一个特殊字符。您需要将其编码为&;。xml中的字段应为:

    <field name="domain_force"> 
      ['|','&amp;', ('type', '!=', 'private'), ('type', '=', False),('is_student', '!=', True)]
    </field>

['|','&;',('type','!=','private'),('type','=',False),('is_student','!=',True)]

有关XML编码的更多信息,请参见答案

如果要更改现有记录值,则需要定义一个具有相同id的记录,在您的示例中是
base.res\u partner\u rule\u private\u employee

无需定义所有已定义的值,只需添加/更改那些值。比如:

<record id="base.res_partner_rule_private_employee" model="ir.rule">
    <field name="domain_force">
        ['|','&amp;', ('type', '!=', 'private'), ('type', '=', False),('is_student', '!=', True)]
    </field>
</record>

['|','&;',('type','!=','private'),('type','=',False),('is_student','!=',True)]

我还认为
&
&
在这种情况下不需要它,因为当您不指定它时,它是元组之间的默认运算符,但如果您想更改现有记录值,则需要使用相同id定义一个记录,在您的情况下是
base.res\u partner\u rule\u private\u employee

无需定义所有已定义的值,只需添加/更改那些值。比如:

<record id="base.res_partner_rule_private_employee" model="ir.rule">
    <field name="domain_force">
        ['|','&amp;', ('type', '!=', 'private'), ('type', '=', False),('is_student', '!=', True)]
    </field>
</record>

['|','&;',('type','!=','private'),('type','=',False),('is_student','!=',True)]

我还认为
&
&在这种情况下不需要它,因为当您不指定它时,它是元组之间的默认运算符,但只需尝试一下即可

谢谢您的快速回复,是的,我尝试替换&by&;它不会显示错误,但它不会用该错误替换我的域强制!谢谢您的快速回复,是的,我试图用&;替换;它不会显示错误,但它不会用该错误替换我的域强制!是的,我也这么认为,但是这个改变有什么问题,你有什么建议吗?我的回答中的每件事都有。是的,我也这么认为,但是这个改变有什么问题,你有什么建议吗?我的回答中的每件事都有