This question has been flagged

Hello everyone.

I've been working with OpenERP (now Odoo) for a long time. But now I'm a little bit confused. I used to inherit point_of_sale and add css on __openerp__.py. But now that it changed and now css files are called inside html_template under point_of_sale/controllers/main.py and also js files are inserted on point_of_sale/views/point_of_sale.xml I am really confused about how this works and how should I add css from my multiple POS addons. I don't want to override and add my css because this should be inheritable. So please can someone explain me how this works?

Avatar
Discard
Best Answer

In v8 adding of static files is different as v7.

You must define static files in view, where you inheriting core views.

1. in module folder create folder named views

2. create in where file named: you_module_name.xml

3. in __openerp.py__ add: 'data': ['views/you_module_name.xml']

4. in you_module_name.xml add: 

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>
        <template id="assets_backend" name="you_module_name assets" inherit_id="web.assets_backend">
            <xpath expr="." position="inside">
                <link rel="stylesheet" href="/you_module_name/static/src/css/you_module_name.css"/>
                <script type="text/javascript" src="/you_module_name/static/src/js/you_module_name.js"></script>
            </xpath>
        </template>
    </data>
</openerp>
Avatar
Discard
Author

Thanks a lot. That helped me a lot. I've created my own module to add only css and js to POS since I don't want that everywhere. And everything is working like a charm. Thanks for the guide.

If I want to override some css in the file /home/odoo/addons/point_of_sale/static/src/css/pos.css. But when I enter in my POS, my CSS are not applied when I declare it like you. How to override CSS from the file pos.css?

Best Answer

I haven't found this in the documentation... isn't there any easier way? Creating a whole xml with xpath inheritance sounds like too much work for adding a simple css class...

 

And what kind of view is this, the template tag is not familiar to me. Is this a QWeb Template? I didn't use QWeb Templates for my module - do I have to create some?

Avatar
Discard
Best Answer

I thought that the template would need some extra customization, but I only had to change "you_module_name" and make sure that the path for css / js was correct. Thanks for the template!

Avatar
Discard