Buscar..


Sintaxis

  • Nota sobre la sintaxis XML: como el registro se realiza dentro de un archivo XML, no puede dejar ninguna etiqueta sin cerrar como podría hacerlo en un HTML simple, como: <link rel = 'hoja de estilo' href = "..." > , Cierre el etiqueta de enlace en su lugar, como:
    • <link rel = 'hoja de estilo' href = "..." / >

Parámetros

Valores posibles del parámetro inherit_id sentido
web.assets_backend Usado solo en páginas internas, NO incluido en un sitio web público.
website.assets_frontend Se utiliza solo en un sitio web público (a través del módulo " sitio web ").
web.assets_common Utilizado tanto en sitio web público como en páginas internas.

Observaciones

Si no está seguro de qué opción es adecuada para usted, pruebe la primera opción (backend), ya que se utiliza en la mayoría de los casos y casi en todos los casos si no ha instalado el módulo "sitio web". Odoo distingue entre activos "backend" y "frontend" porque el sitio web público proporcionado por el módulo "website" utiliza un estilo y código JS diferente al de las páginas internas destinadas a tareas de ERP, es decir, "frontend" está asociado con el sitio web público y "backend" se asocia con páginas internas para ERP (el significado de "frontend" y "backend" son Odoo específicos aquí, pero ambos son "frontend" en sentido más general).

No solo puede elegir y usar una de las opciones, sino también usar cualquier combinación de ellas (dos de ellas o todas) en el mismo módulo. Factorice un backend, un frontend y un código JS / CSS común en archivos separados para adherirse mejor a DRY y tener el código adecuado en el sitio web público y en las páginas internas.

No olvide agregar "web" (cuando usa la opción 1 ) o "sitio web" (cuando usa la opción 2 ) a la lista de dependencias en el manifiesto __openerp__.py .

Almacena archivos CSS y JS correctamente en el módulo Odoo.

Los archivos CSS y JS deben residir bajo el directorio 'estático' en el directorio raíz del módulo (el resto del árbol de subdirectorios bajo 'estático' es una convención opcional):

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

Luego, agregue enlaces a estos archivos sin ver una de las 3 formas enumeradas en los siguientes ejemplos.

Opción 1: [BACKEND] Agrega archivos CSS y Javascript para usar en páginas internas

La forma Odoo v8.0 es agregar el registro correspondiente en el archivo XML:

  • Agregue el archivo XML al manifiesto (es decir, el archivo __openerp__.py .):

    ...
    'datos': ['tu_archivo.xml'],
    ...

  • Luego agregue el siguiente registro en '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>  

Opción 2: [FRONTEND] Agrega archivos CSS y Javascript para usar en un sitio web público

Nota: debe usar esta forma si ha instalado un módulo de "sitio web" y tiene un sitio web público disponible.

  • Agregue el siguiente registro en '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>  

Opción 3: [COMÚN] Agregue archivos CSS y Javascript para usar en todas las páginas (backend y frontend)

  • Agregue el siguiente registro en '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
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow