首页 > 解决方案 > 如何在 Odoo 10 的日历视图中显示自己的看板卡?

问题描述

我刚刚问过这个问题:如何在 Odoo 11 的日历视图中显示您自己的看板卡?

我以为我正在使用版本 11,但它是 10,这就是templates标签不起作用的原因。当然,我必须为版本 10 这样做。问题是此时两个版本完全不同,并且templates标签不存在。

我的目的

我想在日历视图中显示自定义卡片(view_calendar_event_calendar来自calendar.event模型)。什么templates标签会是完美的,但似乎我不能在版本 10 中使用它。

一些信息

我在base/rng/view.rng中寻找calendar标签的可能性:

<rng:define name="calendar">
    <rng:element name="calendar">
        <rng:optional><rng:attribute name="string" /></rng:optional>
        <rng:optional><rng:attribute name="color" /></rng:optional>
        <rng:optional><rng:attribute name="date_start" /></rng:optional>
        <rng:optional><rng:attribute name="date_stop" /></rng:optional>
        <rng:optional><rng:attribute name="day_length" /></rng:optional>
        <rng:optional><rng:attribute name="date_delay" /></rng:optional>
        <rng:optional><rng:attribute name="all_day" /></rng:optional>
        <rng:optional><rng:attribute name="event_open_popup" /></rng:optional>            
        <rng:optional><rng:attribute name="attendee" /></rng:optional>
        <rng:optional><rng:attribute name="color_is_attendee" /></rng:optional>
        <rng:optional><rng:attribute name="avatar_filter" /></rng:optional>
        <rng:optional><rng:attribute name="avatar_model" /></rng:optional>
        <rng:optional><rng:attribute name="avatar_title" /></rng:optional>
        <rng:optional><rng:attribute name="use_contacts" /></rng:optional>
        <rng:optional><rng:attribute name="quick_add" /></rng:optional>
        <rng:optional><rng:attribute name="display" /></rng:optional>            
        <rng:optional><rng:attribute name="type" /></rng:optional>
        <rng:optional>
            <rng:attribute name="mode">
                <rng:choice>
                    <rng:value>month</rng:value>
                    <rng:value>week</rng:value>
                    <rng:value>day</rng:value>
                </rng:choice>
            </rng:attribute>
        </rng:optional>
        <rng:oneOrMore>
            <rng:ref name="field"/>
        </rng:oneOrMore>
        <rng:zeroOrMore>
            <rng:ref name="html"/>
        </rng:zeroOrMore>
    </rng:element>
</rng:define>

看来我可以在标签html内声明一个元素。calendar

我的尝试

但我做不到,我收到 JS 错误Uncaught TypeError: Cannot read property 'type' of undefined。这是我迄今为止尝试过的(在很多事情中):

<record id="view_calendar_event_calendar" model="ir.ui.view">
    <field name="name">calendar.event.calendar</field>
    <field name="model">calendar.event</field>
    <field name="inherit_id" ref="calendar.view_calendar_event_calendar"/>
    <field name="arch" type="xml">
        <xpath expr="//calendar[1]" position="replace">
            <calendar string="Meetings" date_start="start" date_stop="stop" date_delay="duration"
                all_day="allday" display="[color_confirmed]" color="color_confirmed"
                event_open_popup="%(calendar.view_calendar_event_form_popup)s" mode="month">
                <field name="name"/>
                <html>
                    <div>HELLO</div>
                </html>
            </calendar>
        </xpath>
    </field>
</record>

有谁知道如何实现我的目的?

标签: xmlcalendarodooodoo-10qweb

解决方案


推荐阅读