同一模型 odoo 版本 8 的多个树视图
multiple tree views for same model odoo version 8
我有问题!
好吧,我一直在尝试继承模型 product.template 并创建一个新的菜单项和操作 window 以调用一个新的独立树视图
但是我的新树视图正在影响旧视图!这是我的代码!
<?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>
好吧,它会影响默认的树视图
我怎样才能在不影响旧视图的情况下调用我的树视图
谢谢
指定视图类型和优先级。
<field name="type">tree</field>
<field name="priority" eval="20"/>
视图的默认优先级为 16。较低的值表示较高的优先级,反之亦然。只需将您的视图设置为低于原始视图的优先级,除非您明确指定,否则 Odoo 将不会优先使用它。
有关观看优先级的简要信息:https://www.odoo.com/documentation/8.0/reference/views.html
好吧,为了实现这一点,我必须创建一个主要动作,为新视图重新组合两个动作:
<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>
现在我们为我们的新树视图做了一个动作,link它是第一个动作,我们应该对表单做同样的事情
<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>
完美,我们现在只需要为第一个操作 (action1) 创建一个菜单项
<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"/>
我有问题!
好吧,我一直在尝试继承模型 product.template 并创建一个新的菜单项和操作 window 以调用一个新的独立树视图
但是我的新树视图正在影响旧视图!这是我的代码!
<?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>
好吧,它会影响默认的树视图 我怎样才能在不影响旧视图的情况下调用我的树视图 谢谢
指定视图类型和优先级。
<field name="type">tree</field>
<field name="priority" eval="20"/>
视图的默认优先级为 16。较低的值表示较高的优先级,反之亦然。只需将您的视图设置为低于原始视图的优先级,除非您明确指定,否则 Odoo 将不会优先使用它。
有关观看优先级的简要信息:https://www.odoo.com/documentation/8.0/reference/views.html
好吧,为了实现这一点,我必须创建一个主要动作,为新视图重新组合两个动作:
<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>
现在我们为我们的新树视图做了一个动作,link它是第一个动作,我们应该对表单做同样的事情
<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>
完美,我们现在只需要为第一个操作 (action1) 创建一个菜单项
<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"/>