位置:首页 > > Odoo 添加Style

Odoo 添加Style

Odoo默认使用了Bootstrap。这意味着,你可以使用所有Bootstrap的引导样式和布局功能。

当然了,如果你想采用独特的设计,Bootstrap是不够的。以下步骤将指导您如何将自定义的样式(Style)添加到主题中。最终的效果不会很漂亮,但会让你了解完整的过程。

我们先创建一个空文件,名为style.less,放在一个名为less的静态文件夹下。下面的规则将影响服务页面的样式。复制并粘贴它,然后保存文件。
.services {
    background: #EAEAEA;
    padding: 1em;
    margin: 2em 0 3em;
    li {
        display: block;
        position: relative;
        background-color: #16a085;
        color: #FFF;
        padding: 2em;
        text-align: center;
        margin-bottom: 1em;
        font-size: 1.5em;
    }
}

样式文件已经准备好了,但是主题里还没有包含它。

回到view文件夹中并创建一个assets.xml文件。添加Odoo默认的XML标记并复制粘贴以下代码。记得要把theme文件夹替换成自己的主题名称。
<template id="mystyle" name="My style" inherit_id="website.assets_frontend">
    <xpath expr="link[last()]" position="after">
        <link href="/theme folder/static/less/style.less" rel="stylesheet" type="text/less"/>
    </xpath>
</template>
我们刚刚创建了一个模板,less文件。你可以看到,模板有一个特殊的属性称为inherit_id。这个属性告诉Odoo我们的模板会使用自己的样式。

在这种情况下,我们指的是assets_frontend模板,位于website模块。assets_frontend指定了website builder要使用的assets位置列表,我们的目标是先把它加进去。

这可以通过使用XPath表达式expr="link[last()]"和position="after"来实现,意思是“把我的style的文件放在包含assets清单的的最后”。

把它放在最后一个,我们确保我们的文件将被加载在最后,并采取优先权。

最后添加assets.xml到__openerp__.py文件。

更新你的主题。


我们的less文件现在包含在我们的主题中,它将自动编译,压缩和合并Odoo的assets中。