【问题标题】:Removing page from notebook从笔记本中删除页面
【发布时间】:2017-02-13 13:35:08
【问题描述】:

所以我正在尝试删除表单上的页面(活动中的“门票”)。

因为它有一个属性“name”,我想我可以通过这样做来删除它:

<page name="registrations" position="replace"/>

但我不断收到消息,它无法在父视图中找到该名称。

所以我尝试使用 xpath expr:

<xpath expr="//form/sheet/notebook/page[1]" position="replace"/>

并且不断收到相同的错误,那么我该如何从笔记本中删除页面呢?这是第 10 版。

完整的 XML:

    <record id="event_add_weeks" model="ir.ui.view">
        <field name="inherit_id" ref="event.view_event_form"/>
        <field name="model">event.event</field>
        <field name="arch" type="xml">
            <xpath expr="//page[@name='registrations']" position="replace"/>
        </field>
    </record>

【问题讨论】:

  • 请用完整的追溯错误信息更新您的问题。
  • 完整的 xml 记录也很好。如果没有这个,我会说两个替换看起来都很好。
  • 如果以这种方式使用xpath(立即关闭标签)不是问题,可能是视图中未定义页面。假设您有没有页面的view1view2 继承 view1 添加页面。您尝试通过继承 view1 来删除页面,但由于 view1 没有页面,您无法在那里找到该页面。解决方法:继承view2删除页面。
  • @CZoellner 添加了它
  • @Majikat 我知道视图是如何工作的,这不是错误继承的情况。该页面确实存在于继承中的视图中

标签: openerp odoo-10


【解决方案1】:

试试

<xpath expr="//page[@name='registrations']" position="attributes">
    <attribute name="invisible">1</attribute>
</xpath>

如果没有

<xpath expr="//page[@name='registrations']" position="replace">
</xpath>

试试这个。

<xpath expr="//notebook" position="replace">
                       <page name="registrations" string="Registrations" invisible="1">
                            <group>
                                <group>
                                    <field name="seats_min"/>
                                    <label for="seats_availability"/>
                                    <div>
                                        <field name="seats_availability" widget='radio'/>
                                        <span  attrs="{'invisible': [('seats_availability', '=', 'unlimited')]}" class="oe_read_only">
                                            to
                                        </span>
                                        <field name="seats_max" attrs="{'invisible': [('seats_availability', '=', 'unlimited')], 'required': [('seats_availability', '=', 'limited')]}"/>
                                    </div>
                                </group>
                                <group>
                                    <field name="auto_confirm" groups="base.group_no_one"/>
                                </group>
                            </group>
                        </page>
                        <page string="Email Schedule">
                            <group>
                                <field name="reply_to"/>
                            </group>
                            <field name="event_mail_ids">
                                <tree string="Email Schedule" editable="bottom">
                                    <field name="sequence" widget="handle"/>
                                    <field name="template_id" />
                                    <field name="interval_nbr" attrs="{'readonly':[('interval_unit','=','now')]}"/>
                                    <field name="interval_unit"/>
                                    <field name="interval_type"/>
                                    <field name="done"/>
                                </tree>
                            </field>
                        </page>

</xpath>

您可能需要使 html 不可见,以便其他依赖视图不会失败。

【讨论】:

  • 元素 '' 无法在父视图中找到。检查了我继承的视图,它的表单名称为 strong。
  • 哦,我想我知道该怎么做了。我会修改我的建议
  • 您能否判断错误是由您的 xml 生成还是由另一个试图继承该视图的视图生成?另一个视图可能会尝试修改该页面,并且因为您的 xpath 删除了它,所以它找不到它。或者,您可能需要定位不同的视图 ID。
  • 可能是另一个视图尝试使用 xpath 将 html 注入同一页面,而导致错误的不是您的 xpath。但是在您删除页面后,其他视图 xpath 现在会失败吗?你能看看其他视图是否也继承了这个视图吗?
  • 我能想到的唯一一件事是父视图使用该 xpath 本身,因此如果您尝试删除它会给出错误。我去看看
【解决方案2】:

我查看了 Odoo 8 view_event_form 的原始视图。您只是有一个错字,应该是“Registrations”。以下示例应该有效:

<page name="Registrations" position="replace" />

<xpath expr="//page[@name='Registrations']" position="replace" />

【讨论】:

  • 这不是错字。我使用的是版本 10,那里是小写的
  • 抱歉,此信息丢失。
  • 伙计,如果我不能让这个页面消失,我真的不知道我今晚要怎么睡觉。这毁了我的生活!开玩笑,我更新了我的答案,试试看。如果它不起作用。请拿一个大的物体或高尔夫球杆或球棒,然后像疯子一样尖叫着砸碎你的显示器。希望你的老板会给你压力休假,你不必解释为什么你不能隐藏这个观点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-29
相关资源
最近更新 更多