Zoeken…


Syntaxis

  • Opmerking over XML-syntaxis: aangezien het record in een XML-bestand is gemaakt, kunt u geen enkele tag niet afsluiten zoals u zou kunnen in een gewone HTML, zoals: <link rel = 'stylesheet' href = "..." > , Sluit de link tag in plaats daarvan, zoals:
    • <link rel = 'stylesheet' href = "..." / >

parameters

Mogelijke waarden van de parameter inherit_id betekenis
web.assets_backend Alleen gebruikt op interne pagina's, NIET opgenomen op een openbare website.
website.assets_frontend Alleen gebruikt in een openbare website (via de " website " -module).
web.assets_common Gebruikt in beide, openbare website en interne pagina's.

Opmerkingen

Als u niet zeker weet welke optie voor u geschikt is, probeer dan de eerste optie (backend) omdat deze in de meeste gevallen wordt gebruikt en bijna in alle gevallen als u de "website" -module niet hebt geïnstalleerd. Odoo maakt onderscheid tussen "backend" en "frontend" activa omdat de openbare website die wordt aangeboden door de "website" -module een andere stijl en JS-code gebruikt dan interne pagina's bedoeld om te worden gebruikt voor ERP-taken, dwz "frontend" is gekoppeld aan de openbare website en "backend" wordt geassocieerd met interne pagina's voor ERP (betekenis van "frontend" en "backend" zijn hier Odoo specifiek, maar ze zijn beide "frontend" in meer algemene zin).

U kunt niet alleen een van de opties kiezen en gebruiken, maar ook elke combinatie (twee of alle) in dezelfde module gebruiken. Factor een back-end, een front-end en een gemeenschappelijke JS / CSS-code in afzonderlijke bestanden om DRY beter te kunnen volgen en geschikte code op de openbare website en op de interne pagina's te hebben.

Vergeet niet om "web" (bij gebruik van optie 1 ) of "website" (bij gebruik van optie 2 ) toe te voegen aan de lijst met afhankelijkheden in het manifest __openerp__.py .

Sla CSS- en JS-bestanden correct op in Odoo-module

CSS- en JS-bestanden moeten zich bevinden in de 'statische' map in de hoofdmap van de module (de rest van de submapstructuur onder 'statische' is een optionele conventie):

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

Voeg vervolgens koppelingen naar deze bestanden toe op een van de 3 manieren die in de volgende voorbeelden worden vermeld.

Optie 1: [BACKEND] CSS- en Javascript-bestanden toevoegen voor gebruik op interne pagina's

De Odoo v8.0-manier is om het bijbehorende record toe te voegen aan het XML-bestand:

  • Voeg XML-bestand toe aan het manifest (bijv. __openerp__.py . __openerp__.py bestand.):

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

  • Voeg vervolgens het volgende record toe in '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>  

Optie 2: [FRONTEND] CSS- en Javascript-bestanden toevoegen voor gebruik op een openbare website

Opmerking: u moet deze manier gebruiken als u een "website" -module hebt geïnstalleerd en u een openbare website beschikbaar hebt.

  • Voeg het volgende record toe in '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>  

Optie 3: [COMMON] CSS- en Javascript-bestanden toevoegen om op alle pagina's te gebruiken (backend & frontend)

  • Voeg het volgende record toe in '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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow