Recherche…


Syntaxe

  • Note à propos de la syntaxe XML: Comme l’enregistrement est réalisé à l’intérieur d’un fichier XML, vous ne pouvez pas laisser de tag non fermé comme vous le feriez dans un HTML simple, comme: <link rel = 'stylesheet' href = "..." > , fermez le balise de lien à la place, comme:
    • <link rel = 'stylesheet' href = "..." / >

Paramètres

Valeurs possibles du paramètre inherit_id sens
web.assets_backend Utilisé dans les pages internes uniquement, NON inclus dans un site Web public.
website.assets_frontend Utilisé sur un site Web public uniquement (via le module " website ").
Web.assets_common Utilisé à la fois sur le site Web public et les pages internes.

Remarques

Si vous n'êtes pas sûr de l'option qui vous convient, essayez la première option (backend) car elle est utilisée dans la plupart des cas et presque dans tous les cas si vous n'avez pas installé le module "website". Odoo différencie les ressources "backend" et "frontend" car le site Web public fourni par le module "website" utilise un style et un code JS différents de ceux des pages internes destinées aux tâches ERP. "backend" est associé à des pages internes pour ERP (le sens de "frontend" et "backend" sont spécifiques à Odoo ici, mais ils sont tous deux "frontend" au sens plus général).

Vous pouvez non seulement choisir et utiliser l'une des options, mais également utiliser une combinaison de ces options (deux d'entre elles ou toutes) dans le même module. Facturer un backend, un frontend et un code JS / CSS commun dans des fichiers séparés pour mieux adhérer à DRY et disposer du code approprié sur le site Web public et dans les pages internes.

N'oubliez pas d'ajouter "web" (lorsque vous utilisez l' option 1 ) ou "website" (lorsque vous utilisez l' option 2 ) à la liste des dépendances dans le manifeste __openerp__.py .

Stocker les fichiers CSS et JS correctement dans le module Odoo

Les fichiers CSS et JS doivent se trouver sous le répertoire 'static' dans le répertoire racine du module (le reste de l'arborescence des sous-répertoires sous 'static' est une convention facultative):

  • static / src / css / votre_fichier.css
  • static / src / js / votre_fichier.js

Ajoutez ensuite des liens vers ces fichiers en supprimant l'une des trois méthodes répertoriées dans les exemples suivants.

Option 1: [BACKEND] Ajoutez des fichiers CSS et Javascript à utiliser dans les pages internes

La méthode Odoo v8.0 consiste à ajouter l'enregistrement correspondant dans le fichier XML:

  • Ajoutez le fichier XML au manifeste (c.-à- __openerp__.py . Le fichier __openerp__.py .):

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

  • Ajoutez ensuite l'enregistrement suivant dans '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>  

Option 2: [FRONTEND] Ajoutez des fichiers CSS et Javascript à utiliser sur un site Web public

Remarque: vous devez utiliser cette méthode si vous avez installé un module "site Web" et que vous avez un site Web public disponible.

  • Ajoutez l'enregistrement suivant dans '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>  

Option 3: [COMMON] Ajoutez des fichiers CSS et Javascript à utiliser dans toutes les pages (backend & frontend)

  • Ajoutez l'enregistrement suivant dans '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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow