日历视图中的Odoo v12 Many2many字段

时间:2019-04-23 01:33:55

标签: python odoo odoo-12

我可以在表单视图中成功显示很多许多字段。

enter image description here

但是当我尝试在日历视图中显示它时,我得到“无记录”或“ X记录”,但没有字段内容。

enter image description here

这是我模型中的字段:

user_ids = fields.Many2many('res.users', 'events_user_rel', 'user_id', 'id', string='Event users', select= True, track_visibility='onchange')

这是视图中的代码:

<record id="view_calendar" model="ir.ui.view">
    <field name="name">my.calendar</field>
    <field name="model">my.model</field>
    <field name="inherit_id" ref="my.view_calendar"/>
    <field eval="2" name="priority"/>
    <field name="arch" type="xml">
        <xpath expr="//calendar" position="replace">
          <calendar color="event_id" date_start="date_start" date_stop="date_end" string="Events" all_day="date_start" mode="month">
            <field name="user_ids"/>
          </calendar>
        </xpath>
    </field>
</record>

我该怎么做才能在日历视图中获取值“ Joel Willis等。”

2 个答案:

答案 0 :(得分:1)

尝试<field name="user_ids" write_model="res.users" write_field="name"/>

请参见<path_to_v12>/addons/calendar/views/calendar_views.xml第266-281行的示例。这些参数在<path_to_v12>/addons/web/static/src/js/views/calendar/calendar_view.js第63-94行使用。

答案 1 :(得分:1)

如果您没有与res.users建立多对多关系,而是定义了与res.partner的关系,则可以使用many2manyattendee小部件

<field name="partner_ids" widget="many2manyattendee"/>

请注意,此小部件仅设计用于res.partner

请参见<path_to_v12>/addons/calendar/static/src/js/base_calendar.js<path_to_v12>/addons/calendar/static/tests/calendar_tests.js