为什么我的树视图没有在Odoo 9中加载?

时间:2016-05-26 15:58:02

标签: python xml python-2.7 odoo-9 odoo

以下代码段来自我的两个XML文件。我想为res.partner模型创建一个新的树视图。

<record id="distance_range_search_view_tree"model="ir.ui.view"> 
    <field name="name">distance_range_search_view_tree</field>
    <field name="model">res.partner</field>
    <field name="arch" type="xml">
        <tree string="Contacts within Distance">
            <field name="display_name"/>
            <field name="country_id"/>
            <field name="city"/>
            <field name="state_id"/>
            <field name="zip"/>
            <field name="phone"/>
            <field name="distance"/>
        </tree>
    </field>
</record>

<record id="distance_range_search_action" model="ir.actions.act_window">
    <field name="name">Account Proximity Search</field>
    <field name="type">ir.actions.act_window</field>
    <field name="res_model">res.partner</field>
    <field name='view_mode'>tree</field>
    <field name="view_id" ref="distance_range_search_view_tree"/>
    <field name="help" type="html">
        <p>
           Here is the list of customers
        </p>
    </field>
</record>

我在我的python文件中使用此方法返回树视图:

@api.multi
def distance_to_search1(self):
    #some other code
    return {
        'name': _('Contacts in this range'),
        'type': 'ir.actions.act_window',
        'res_model': 'res.partner',
        'view_type': 'tree',
        'view_mode': 'tree',
        'view_id': self.env.ref('contact_geolocation.distance_range_search_view_tree').id,
        'domain': [('id', 'in', filtered_partner_ids)],
    }  

为什么我的树视图没有加载?

1 个答案:

答案 0 :(得分:2)

试试这个:

<record id="distance_range_search_action" model="ir.actions.act_window">
    <field name="name">Account Proximity Search</field>
    <field name="type">ir.actions.act_window</field>
    <field name="res_model">res.partner</field>
    <field name='view_type'>tree,form</field>
    <field name='view_mode'>tree</field>
    <field name="view_id" ref="distance_range_search_view_tree"/>
    <field name="target">current</field>
    <field name="help" type="html">
        <p>
           Here is the list of customers
        </p>
    </field>
</record>
@api.multi
def distance_to_search1(self):
    #some other code
    return {
        'name': _('Contacts in this range'),
        'type': 'ir.actions.act_window',
        'res_model': 'res.partner',
        'view_type': 'form',
        'view_mode': 'tree',
        'view_id': self.env.ref('contact_geolocation.distance_range_search_view_tree').id,
        'domain': [('id', 'in', filtered_partner_ids)],
    }  

编辑:我在源代码中找到了这个

  

由于历史原因,OpenERP与此有着奇怪的交易   view_mode和view_type属性(关于窗口操作):

     
      
  • 其中一种视图模式是tree,它代表列表视图和树视图
  •   
  • 选择view_type进行选择,form表示列表视图,tree表示实际树状视图。
  •   
     

此方法只需通过添加new将view_type折叠为view_mode   查看模式list,它是tree view_mode的结果   与form view_type。

结合使用