Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
1 Trả lời
9605 Lượt xem

I'm following the Building Interface Extensions (https://www.odoo.com/documentation/11.0/howtos/web.html) with Odoo 11.

In the guide, it is stated that

"In Odoo web, modules are declared as functions set on the global odoo variable. The function's name must be the same as the addon (in this case oepetstore) so the framework can find it, and automatically initialize it."

But my module isn't being initialized and I get the following error:

"Action error - Could not find client action 'petstore.homepage'."



I put some logging in the module and I found that the file is being fetched by the browser, as expected, but the initialization isn't happening. 

This is my JS file:

odoo.oepetstore = function(instance, local) {
console.log('Started odoo.oepetstore'); ////////// [1] - This never runs

local.HomePage = instance.Widget.extend({
template: 'HomePageTemplate',
start: function() {
this.$el.append($('<div>').text('Hello dear Odoo user!'));
}
});
instance.web.client_actions.add('petstore.homepage', 'instance.oepetstore.HomePage');

}

console.log('Loaded petstore.js'); ////////// [2] - This always runs


With Odoo 9 (after renaming the file __manifest__.py to __openerp__.py and renaming the JS var odoo to openerp), everything works as expected.


Why isn't it working with Odoo 11? 

Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

Unlike the guide, I had to define my module using odoo.require :


odoo.define('PetStoreHomePage', function(require){
    "use strict";

    var core = require('web.core');
    var Widget = require('web.Widget');

    var HomePageWidget = Widget.extend({
        template: 'HomePageTemplate',
        start: function() {
            this.$el.append($('<div>').text('Hello dear Odoo user!'));
        }
    });

    core.action_registry.add('petstore.homepage', HomePageWidget);
});
Ảnh đại diện
Huỷ bỏ

Yep, the documentation is outdated.

Bài viết liên quan Trả lời Lượt xem Hoạt động
2
thg 10 22
8003
1
thg 5 21
3061
2
thg 5 20
9696
1
thg 1 20
4944
0
thg 8 19
3844