Templates 如何包括在奥多?

Templates 如何包括在奥多?,templates,include,openerp,qweb,Templates,Include,Openerp,Qweb,我对Odoo(实习)有点陌生,所以我想知道在Odoo(qweb)中是否有包含(php)的等价物 否则,我们如何在另一个xml文件中包含xml文件 例如,我得到了我的主xml文件,我想将不同的页面或页面的一部分(按id或类)调用到我的主页中,这可能吗?我们如何做到这一点 我已经试过了,但似乎在那里不起作用。。。 我已经看过了,但是我不知道它是如何工作的,即使有了odoo文档 我在做奥多10 诚然,等价物是t-call函数或指令t-call包含另一个模板文件。您可以使用它来包装内容,这通常是网站使用

我对Odoo(实习)有点陌生,所以我想知道在Odoo(qweb)中是否有包含(php)的等价物

否则,我们如何在另一个xml文件中包含xml文件

例如,我得到了我的主xml文件,我想将不同的页面或页面的一部分(按id或类)调用到我的主页中,这可能吗?我们如何做到这一点

我已经试过了,但似乎在那里不起作用。。。 我已经看过了,但是我不知道它是如何工作的,即使有了odoo文档

我在做奥多10


诚然,

等价物是
t-call
函数或指令<代码>t-call包含另一个模板文件。您可以使用它来包装内容,这通常是
网站使用的内容。布局
模板的用途如下例所示

<openerp>
    <data>
        <template id="addon_name.template_name" name="Template Name">
            <t t-call="website.layout">
                <div>Hello World</div>
            </t>
        </template>
    </data>
</openerp>
如果您是从另一个模板继承的,则必须首先告诉模板引擎您希望将代码注入的位置。这是使用
xpath
表达式完成的。在Odoo源代码中有许多
xpath
表达式的示例。请在那里或网上复习。下面的示例是对以下评论的回应,这些评论专门针对报告模板。创建报告模板时,您不希望包含
网站布局
模板。这是用于网站视图,而不是
qweb
报告

<openerp>
    <data>
        <template id="addon_name.template_name" inherit_id="addon_name.template_name">
            <xpath expr="//div[@class='class_name']" position="replace">
                    <t t-call="addon_name.top_section"/>
                    <t t-call="addon_name.middle_section"/>
                    <t t-call="addon_name.bottom_section"/>
            </xpath>
        </template>
    </data>
</openerp>


您在哪里创建了模板顶部、中部和底部,我的意思是在哪个文件中以及如何处理继承的文件,因为我遇到了一个与此相关的问题,无法在父视图中找到t-call=“”。。。这里有我的文件,因为您要继承,您需要首先在父模板中为模板指定一个位置,以插入模板代码。可能有一个真正的术语来描述我刚才说的话,但我不知道它是什么。我将用在继承视图中包含另一个xml模板的示例来更新代码。看看您的示例,我认为您需要将
t-call
移动到
xpath
表达式中。模板可以放在一个xml或多个xml文件中。这些文件必须在openerp.xml或manifest.xml文件中引用。一旦你的插件被更新,Odoo会将这些模板存储在数据库中,这样当你在代码中引用它们时,它会找到它们并将它们注入到你的模板中。我做了你的更改,现在我遇到了这个错误,我不认为这比另一个更糟糕,但这是我的模板“titi”定义如我在上一个屏幕链接中所做的,或者我必须在addons文件中触摸,或者类似的东西。为了记录我的两个xml文件都放在同一个文件夹中,我从一个星期以来一直在处理Odoo,这不容易理解它的工作原理。。。我从一开始就把它们放在清单上了
<openerp>
    <data>
        <template id="addon_name.top_section" name="Top Section">

                <div>Hello World</div>

        </template>
    </data>
</openerp>
<openerp>
    <data>
        <template id="addon_name.template_name" inherit_id="addon_name.template_name">
            <xpath expr="//div[@class='class_name']" position="replace">
                    <t t-call="addon_name.top_section"/>
                    <t t-call="addon_name.middle_section"/>
                    <t t-call="addon_name.bottom_section"/>
            </xpath>
        </template>
    </data>
</openerp>