Xml 同一型号odoo版本8的多个树视图

Xml 同一型号odoo版本8的多个树视图,xml,treeview,openerp,odoo-8,openerp-8,Xml,Treeview,Openerp,Odoo 8,Openerp 8,我有个问题! 我一直在尝试继承model product.template并创建一个新的菜单项和操作窗口,以便调用一个新的独立树视图 但我的新树视图正在影响旧树视图!这是我的密码 <?xml version="1.0"?> <openerp> <data> <record id="new_view_tree_modif_product" model="ir.ui.view"> <field name="name">new_

我有个问题! 我一直在尝试继承model product.template并创建一个新的菜单项和操作窗口,以便调用一个新的独立树视图 但我的新树视图正在影响旧树视图!这是我的密码

<?xml version="1.0"?>
<openerp>
 <data>
  <record id="new_view_tree_modif_product" model="ir.ui.view">
    <field name="name">new_view_tree_modif_product</field>
    <field name="model">product.template</field>
    <field name="arch" type="xml">
      <tree editable="bottom" create="0" colors="red:inf_marge_min==True">
          <field name="name" string="Nom" readonly="1"/>
          <field name="standard_price" string="Prix de revient" readonly="1"/>
          <field name="marge" string="Marge"/>
          <field name="list_price" string="Prix de vente"/>
          <field name="inf_marge_min" invisible="1"/>
        </tree>
    </field>
  </record>
  <act_window id="action_new_view_product"
              name="Etude de prix"
              res_model="product.template"
              view_mode="tree" />
  <menuitem id="menu_prix_modif_product"
            name="Prix"
            parent="base.menu_product"
            sequence="9"
            action="action_new_view_product" />
  <record id="tree_id" model="ir.actions.act_window.view">
    <field eval="3" name="sequence"/>
    <field name="view_mode">tree</field>
    <field name="view_id" ref="new_view_tree_modif_product"/>
    <field name="act_window_id" ref="action_new_view_product"/>
  </record>
</data>
它会影响默认的树视图 如何调用我的树视图而不影响旧视图
thnx

指定视图类型和优先级

<field name="type">tree</field>
<field name="priority" eval="20"/>
视图的默认优先级为16。值越低意味着优先级越高,反之亦然。只需将视图设置为比原始视图低的优先级,除非您明确指定,否则Odoo将不喜欢它


有关视图优先级的简要信息:

指定视图类型和优先级

<field name="type">tree</field>
<field name="priority" eval="20"/>
视图的默认优先级为16。值越低意味着优先级越高,反之亦然。只需将视图设置为比原始视图低的优先级,除非您明确指定,否则Odoo将不喜欢它


关于视图优先级的简要信息:

为了实现这一点,我必须创建一个主操作,其中为新视图重新组合两个操作:

<record id="action_1" model="ir.actions.act_window">
   <field name="name">new view</field>                                         
   <field name="res_model">model.name</field>                                  
   <field name="view_type">form</field>                                        
   <field name="view_mode">tree,form</field>                                   
   <field eval="False" name="view_id"/>                                        
</record>
这是主要动作,现在我们应该为每个视图创建动作: 新树视图的操作1

<record id="action_new_tree" model="ir.actions.act_window.view">     
    <field eval="1" name="sequence"/>  
    <field name="view_mode">tree</field>  
    <field name="view_id" ref="external id of your new tree view"/>
    <field name="act_window_id" ref="action_1"/>
</record>
现在我们为新的树视图做了一个操作,并将其链接到第一个操作,我们应该对表单做同样的操作

<record id="action_new_form" model="ir.actions.act_window.view">     
    <field eval="1" name="sequence"/>  
    <field name="view_mode">form</field>  
    <field name="view_id" ref="external id of your new form view"/>
    <field name="act_window_id" ref="action_1"/>
</record>
很好,我们现在只需要为第一个动作创建一个菜单项1

<menuitem id="id_of_ur_new_menu"  
 name="new form and tree view for an existing model"               
 parent="parent.menu "               
 action="action_1"/>

为了实现这一点,我必须创建一个主要的动作,为新的视图重新组合两个动作:

<record id="action_1" model="ir.actions.act_window">
   <field name="name">new view</field>                                         
   <field name="res_model">model.name</field>                                  
   <field name="view_type">form</field>                                        
   <field name="view_mode">tree,form</field>                                   
   <field eval="False" name="view_id"/>                                        
</record>
这是主要动作,现在我们应该为每个视图创建动作: 新树视图的操作1

<record id="action_new_tree" model="ir.actions.act_window.view">     
    <field eval="1" name="sequence"/>  
    <field name="view_mode">tree</field>  
    <field name="view_id" ref="external id of your new tree view"/>
    <field name="act_window_id" ref="action_1"/>
</record>
现在我们为新的树视图做了一个操作,并将其链接到第一个操作,我们应该对表单做同样的操作

<record id="action_new_form" model="ir.actions.act_window.view">     
    <field eval="1" name="sequence"/>  
    <field name="view_mode">form</field>  
    <field name="view_id" ref="external id of your new form view"/>
    <field name="act_window_id" ref="action_1"/>
</record>
很好,我们现在只需要为第一个动作创建一个菜单项1

<menuitem id="id_of_ur_new_menu"  
 name="new form and tree view for an existing model"               
 parent="parent.menu "               
 action="action_1"/>

将此行“primary”添加到代码中,则不会影响默认树视图

<record id="tree_id" model="ir.actions.act_window.view">
    <field eval="3" name="sequence"/>
    <field name="view_mode">tree</field>
    <field name="view_id" ref="new_view_tree_modif_product"/>
    <field name="mode">primary</field>
    <field name="act_window_id" ref="action_new_view_product"/>

将此行“primary”添加到代码中,则不会影响默认树视图

<record id="tree_id" model="ir.actions.act_window.view">
    <field eval="3" name="sequence"/>
    <field name="view_mode">tree</field>
    <field name="view_id" ref="new_view_tree_modif_product"/>
    <field name="mode">primary</field>
    <field name="act_window_id" ref="action_new_view_product"/>

看起来很奇怪。您如何知道它正在影响默认树视图,如何在客户端中看到它?xml看起来很好,或者太晚了,我是瞎子-嗯,当我检查其他树状视图模板视图时,如果我在视图中添加一个新字段,它将与原始视图相同:/add field priority to your ir.ui.view记录,值为100。然后再试一次。将视图id添加到您的act\u窗口嗨,伙计们,我刚刚发布了我的解决方案,这很容易,看起来很奇怪。您如何知道它正在影响默认树视图,如何在客户端中看到它?xml看起来很好,或者太晚了,我是瞎子-嗯,当我检查其他树状视图模板视图时,如果我在视图中添加一个新字段,它将与原始视图相同:/add field priority to your ir.ui.view记录,值为100。然后再试一次。将视图id添加到您的act\u窗口嗨,伙计们,我刚刚发布了我的解决方案,非常简单。这是唯一一个对我有效的解决方案,谢谢,洛蒂。这是唯一一个对我有效的解决方案,非常感谢