Поиск…


Синтаксис

  • Обратите внимание на синтаксис XML: поскольку запись сделана внутри XML-файла, вы не можете оставить какой-либо тег, который был закрыт, как вы могли, в простом HTML, например: <link rel = 'stylesheet' href = "..." > , Закрыть вместо этого используйте тег link:
    • <link rel = 'stylesheet' href = "..." / >

параметры

Возможные значения параметра inherit_id имея в виду
web.assets_backend Используется только на внутренних страницах, НЕ включается в общедоступный веб-сайт.
website.assets_frontend Используется только на общедоступном веб-сайте (через модуль « веб-сайт »).
web.assets_common Используется как на общедоступном веб-сайте, так и на внутренних страницах.

замечания

Если вы не уверены в том, какой вариант подходит для вас, попробуйте первый вариант (бэкэнд), поскольку он используется в большинстве случаев и почти во всех случаях, если вы не установили модуль «веб-сайт». Odoo различает активы «backend» и «frontend», потому что публичный веб-сайт, предоставленный модулем «веб-сайт», использует разные стили и JS-код, чем внутренние страницы, предназначенные для использования в ERP-задачах, то есть «frontend» связан с общедоступным веб-сайтом и «backend» связан с внутренними страницами для ERP (значение «frontend» и «backend» здесь Odoo специфично, но они являются «интерфейсом» в более общем смысле).

Вы можете не только выбирать и использовать один из вариантов, но и использовать любую комбинацию из них (две или все из них) в том же модуле. Фактор backend, интерфейс и общий код JS / CSS в разделенные файлы, чтобы лучше придерживаться DRY и иметь подходящий код на общедоступном веб-сайте и на внутренних страницах.

Не забудьте добавить «web» (при использовании опции 1 ) или «веб-сайт» (при использовании варианта 2 ) в список зависимостей в манифесте __openerp__.py .

Храните файлы CSS и JS правильно в модуле Odoo

Файлы CSS и JS должны находиться в каталоге «static» в корневом каталоге модуля (остальное дерево подкаталогов под «static» является необязательным соглашением):

  • static / src / css / your_file.css
  • static / src / js / your_file.js

Затем добавьте ссылки на эти файлы, не указывая один из трех способов, перечисленных в следующих примерах.

Вариант 1: [BACKEND] Добавить файлы CSS и Javascript для использования на внутренних страницах

Способ Odoo v8.0 - добавить соответствующую запись в файл XML:

  • Добавьте файл XML в манифест (т. __openerp__.py Файл __openerp__.py .):

    ...
    'data': ['your_file.xml'],
    ...

  • Затем добавьте следующую запись в 'your_file.xml' :

    <openerp>
        <data>  
            <template id="assets_backend" name="your_module_name assets" inherit_id="web.assets_backend">  
                <xpath expr="." position="inside">  
                    <link rel='stylesheet' href="/fr/your_module_name/static/src/css/your_file.css"/>  
                    <script type="text/javascript" src="/your_module_name/static/src/js/your_file.js"></script>  
                </xpath>  
            </template>  
        ....  
        ....  
        </data>  
     </openerp>  

Вариант 2: [FRONTEND] Добавить файлы CSS и Javascript для использования на общедоступном веб-сайте

Примечание: вы должны использовать этот путь, если вы установили модуль «веб-сайт», и у вас есть общедоступный веб-сайт.

  • Добавьте следующую запись в 'your_file.xml' :
    <openerp>
        <data>  

            <template id="assets_frontend" name="your_module_name assets" inherit_id="website.assets_frontend">  
                <xpath expr="link[last()]" position="after">  
                    <link rel='stylesheet' href="/fr/your_module_name/static/src/css/your_file.css"/>  
                </xpath>  
                <xpath expr="script[last()]" position="after">  
                    <script type="text/javascript" src="/your_module_name/static/src/js/your_file.js"></script>  
                </xpath>  
            </template>  

        </data>  
     </openerp>  

Вариант 3: [COMMON] Добавить файлы CSS и Javascript для использования на всех страницах (backend & frontend)

  • Добавьте следующую запись в 'your_file.xml' :
    <openerp>
        <data>  

            <template id="assets_common" name="your_module_name assets" inherit_id="web.assets_common">  
                <xpath expr="." position="inside">  
                    <link rel='stylesheet' href="/fr/your_module_name/static/src/css/your_file.css"/>  
                    <script type="text/javascript" src="/your_module_name/static/src/js/your_file.js"></script>  
                </xpath>  
            </template>  
  
        </data>  
     </openerp>  


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow