Szukaj…


Składnia

  • Uwaga na temat składni XML: ponieważ rekord jest zapisywany w pliku XML, nie można pozostawić żadnego tagu niezamkniętego, jak to możliwe w zwykłym pliku HTML, na przykład: <link rel = 'stylesheet' href = "..." > , Zamknij zamiast tego tag link:
    • <link rel = 'stylesheet' href = "..." / >

Parametry

Możliwe wartości parametru inherit_id znaczenie
web.assets_backend Używany tylko na wewnętrznych stronach, NIE jest zawarty w publicznej witrynie internetowej.
website.assets_frontend Używany tylko w publicznej witrynie internetowej (za pośrednictwem modułu „ strona internetowa ”).
web.assets_common Używany zarówno w publicznej witrynie, jak i na stronach wewnętrznych.

Uwagi

Jeśli nie masz pewności, która opcja jest dla Ciebie odpowiednia, wypróbuj pierwszą opcję (backend), ponieważ jest ona używana w większości przypadków i prawie we wszystkich przypadkach, jeśli nie zainstalowałeś modułu „strony internetowej”. Odoo rozróżnia zasoby „backend” i „frontend”, ponieważ publiczna witryna internetowa udostępniana przez moduł „website” używa innej stylizacji i kodu JS niż wewnętrzne strony przeznaczone do zadań ERP, tzn. „Frontend” jest powiązany z publiczną stroną internetową i „backend” jest powiązany z wewnętrznymi stronami dla ERP (znaczenie „frontend” i „backend” są tutaj specyficzne dla Odoo, ale oba są „frontendem” w bardziej ogólnym znaczeniu).

Możesz nie tylko wybrać i użyć jednej z opcji, ale także użyć dowolnej ich kombinacji (dwóch lub wszystkich) w tym samym module. Uwzględnij backend, frontend i wspólny kod JS / CSS w osobnych plikach, aby lepiej stosować się do DRY i mieć odpowiedni kod w publicznej witrynie internetowej i na stronach wewnętrznych.

Nie zapomnij dodać „WWW” (przy użyciu opcji 1 ) lub „strony internetowej” (przy użyciu opcji 2 ) do listy zależności w manifeście __openerp__.py .

Przechowuj pliki CSS i JS poprawnie w module Odoo

Pliki CSS i JS powinny znajdować się w katalogu „static” w katalogu głównym modułu (reszta drzewa podkatalogów w „static” to opcjonalna konwencja):

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

Następnie dodaj łącza do tych plików bez jednego z 3 sposobów wymienionych w poniższych przykładach.

Opcja 1: [POWRÓT] Dodaj pliki CSS i JavaScript do użycia na stronach wewnętrznych

Odoo v8.0 sposobem jest dodanie odpowiedniego rekordu w pliku XML:

  • Dodaj plik XML do manifestu (tj. Plik __openerp__.py .):

    ...
    „data”: [„twoj_plik.xml”],
    ...

  • Następnie dodaj następujący rekord do '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>  

Opcja 2: [FRONTEND] Dodaj pliki CSS i Javascript do użytku w publicznej witrynie internetowej

Uwaga: należy użyć tej metody, jeśli zainstalowałeś moduł „strony internetowej” i masz dostęp do publicznej strony internetowej.

  • Dodaj następujący rekord w '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>  

Opcja 3: [WSPÓLNE] Dodaj pliki CSS i JavaScript do użycia na wszystkich stronach (backend i frontend)

  • Dodaj następujący rekord w '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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow