How make my custom module visible in app switcher odoo12 through code
I am new to the odoo and I developed a small custom module in odoo12. The problem is I am not able to see my custom module in the app switcher page after installing the module. (Below I gave the image link, where I am not able to see the module I have created after installing).
This is the link
module odoo odoo-12
add a comment |
I am new to the odoo and I developed a small custom module in odoo12. The problem is I am not able to see my custom module in the app switcher page after installing the module. (Below I gave the image link, where I am not able to see the module I have created after installing).
This is the link
module odoo odoo-12
add a comment |
I am new to the odoo and I developed a small custom module in odoo12. The problem is I am not able to see my custom module in the app switcher page after installing the module. (Below I gave the image link, where I am not able to see the module I have created after installing).
This is the link
module odoo odoo-12
I am new to the odoo and I developed a small custom module in odoo12. The problem is I am not able to see my custom module in the app switcher page after installing the module. (Below I gave the image link, where I am not able to see the module I have created after installing).
This is the link
module odoo odoo-12
module odoo odoo-12
asked Nov 13 '18 at 11:35
Abhi RamAbhi Ram
62
62
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The first step is you must define a menuitem, if you do not set a "parent" it will be a root menu and will therefore appear in the app drawer.
<menuitem
id="model_menu_root"
name="Module Menu"
web_icon="module_name,static/description/icon.png"
groups="base.group_user"
sequence="6"
/>
You will probably want to have submenus to access your models, they will use this menu as their parent.
<menuitem name="Model Name" id="menu_1_list" parent="model_menu_root"
action="action_window"/>
And the menu refers to the window action, which controls how your model is displayed.
<record model="ir.actions.act_window" id="action_window">
<field name="name">Model Name</field>
<field name="res_model">module_name.model_name</field>
<field name="view_mode">tree,form</field>
</record>
You will need to define some security rules, otherwise the menu will not appear. These are controlled in the ir.model.access.csv file which must be declared in the __manifest__.py file. In previous versions skipping this step would be fine for testing purposes as the admin user would be able to see all models but this seems to have changed in v12 and you will need to define security rules before the menu becomes visible. Security rules are explained in the odoo developer docs https://www.odoo.com/documentation/12.0/reference/security.html
By the way, for a problem like this, usually the first place I would look would be the Odoo source code on GitHub. You can see how they have implemented the root menu and security rules on each of their modules and emulate it for your module.
in which xml should I include these menu items? or should I write a new one?
– Abhi Ram
Nov 15 '18 at 7:37
Some people choose to create a new xml for menus if you have a lot of them, if it's just one or two then you can add them in the same XML as your views.
– djames
Nov 15 '18 at 7:42
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53280169%2fhow-make-my-custom-module-visible-in-app-switcher-odoo12-through-code%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The first step is you must define a menuitem, if you do not set a "parent" it will be a root menu and will therefore appear in the app drawer.
<menuitem
id="model_menu_root"
name="Module Menu"
web_icon="module_name,static/description/icon.png"
groups="base.group_user"
sequence="6"
/>
You will probably want to have submenus to access your models, they will use this menu as their parent.
<menuitem name="Model Name" id="menu_1_list" parent="model_menu_root"
action="action_window"/>
And the menu refers to the window action, which controls how your model is displayed.
<record model="ir.actions.act_window" id="action_window">
<field name="name">Model Name</field>
<field name="res_model">module_name.model_name</field>
<field name="view_mode">tree,form</field>
</record>
You will need to define some security rules, otherwise the menu will not appear. These are controlled in the ir.model.access.csv file which must be declared in the __manifest__.py file. In previous versions skipping this step would be fine for testing purposes as the admin user would be able to see all models but this seems to have changed in v12 and you will need to define security rules before the menu becomes visible. Security rules are explained in the odoo developer docs https://www.odoo.com/documentation/12.0/reference/security.html
By the way, for a problem like this, usually the first place I would look would be the Odoo source code on GitHub. You can see how they have implemented the root menu and security rules on each of their modules and emulate it for your module.
in which xml should I include these menu items? or should I write a new one?
– Abhi Ram
Nov 15 '18 at 7:37
Some people choose to create a new xml for menus if you have a lot of them, if it's just one or two then you can add them in the same XML as your views.
– djames
Nov 15 '18 at 7:42
add a comment |
The first step is you must define a menuitem, if you do not set a "parent" it will be a root menu and will therefore appear in the app drawer.
<menuitem
id="model_menu_root"
name="Module Menu"
web_icon="module_name,static/description/icon.png"
groups="base.group_user"
sequence="6"
/>
You will probably want to have submenus to access your models, they will use this menu as their parent.
<menuitem name="Model Name" id="menu_1_list" parent="model_menu_root"
action="action_window"/>
And the menu refers to the window action, which controls how your model is displayed.
<record model="ir.actions.act_window" id="action_window">
<field name="name">Model Name</field>
<field name="res_model">module_name.model_name</field>
<field name="view_mode">tree,form</field>
</record>
You will need to define some security rules, otherwise the menu will not appear. These are controlled in the ir.model.access.csv file which must be declared in the __manifest__.py file. In previous versions skipping this step would be fine for testing purposes as the admin user would be able to see all models but this seems to have changed in v12 and you will need to define security rules before the menu becomes visible. Security rules are explained in the odoo developer docs https://www.odoo.com/documentation/12.0/reference/security.html
By the way, for a problem like this, usually the first place I would look would be the Odoo source code on GitHub. You can see how they have implemented the root menu and security rules on each of their modules and emulate it for your module.
in which xml should I include these menu items? or should I write a new one?
– Abhi Ram
Nov 15 '18 at 7:37
Some people choose to create a new xml for menus if you have a lot of them, if it's just one or two then you can add them in the same XML as your views.
– djames
Nov 15 '18 at 7:42
add a comment |
The first step is you must define a menuitem, if you do not set a "parent" it will be a root menu and will therefore appear in the app drawer.
<menuitem
id="model_menu_root"
name="Module Menu"
web_icon="module_name,static/description/icon.png"
groups="base.group_user"
sequence="6"
/>
You will probably want to have submenus to access your models, they will use this menu as their parent.
<menuitem name="Model Name" id="menu_1_list" parent="model_menu_root"
action="action_window"/>
And the menu refers to the window action, which controls how your model is displayed.
<record model="ir.actions.act_window" id="action_window">
<field name="name">Model Name</field>
<field name="res_model">module_name.model_name</field>
<field name="view_mode">tree,form</field>
</record>
You will need to define some security rules, otherwise the menu will not appear. These are controlled in the ir.model.access.csv file which must be declared in the __manifest__.py file. In previous versions skipping this step would be fine for testing purposes as the admin user would be able to see all models but this seems to have changed in v12 and you will need to define security rules before the menu becomes visible. Security rules are explained in the odoo developer docs https://www.odoo.com/documentation/12.0/reference/security.html
By the way, for a problem like this, usually the first place I would look would be the Odoo source code on GitHub. You can see how they have implemented the root menu and security rules on each of their modules and emulate it for your module.
The first step is you must define a menuitem, if you do not set a "parent" it will be a root menu and will therefore appear in the app drawer.
<menuitem
id="model_menu_root"
name="Module Menu"
web_icon="module_name,static/description/icon.png"
groups="base.group_user"
sequence="6"
/>
You will probably want to have submenus to access your models, they will use this menu as their parent.
<menuitem name="Model Name" id="menu_1_list" parent="model_menu_root"
action="action_window"/>
And the menu refers to the window action, which controls how your model is displayed.
<record model="ir.actions.act_window" id="action_window">
<field name="name">Model Name</field>
<field name="res_model">module_name.model_name</field>
<field name="view_mode">tree,form</field>
</record>
You will need to define some security rules, otherwise the menu will not appear. These are controlled in the ir.model.access.csv file which must be declared in the __manifest__.py file. In previous versions skipping this step would be fine for testing purposes as the admin user would be able to see all models but this seems to have changed in v12 and you will need to define security rules before the menu becomes visible. Security rules are explained in the odoo developer docs https://www.odoo.com/documentation/12.0/reference/security.html
By the way, for a problem like this, usually the first place I would look would be the Odoo source code on GitHub. You can see how they have implemented the root menu and security rules on each of their modules and emulate it for your module.
answered Nov 13 '18 at 15:10
djamesdjames
642
642
in which xml should I include these menu items? or should I write a new one?
– Abhi Ram
Nov 15 '18 at 7:37
Some people choose to create a new xml for menus if you have a lot of them, if it's just one or two then you can add them in the same XML as your views.
– djames
Nov 15 '18 at 7:42
add a comment |
in which xml should I include these menu items? or should I write a new one?
– Abhi Ram
Nov 15 '18 at 7:37
Some people choose to create a new xml for menus if you have a lot of them, if it's just one or two then you can add them in the same XML as your views.
– djames
Nov 15 '18 at 7:42
in which xml should I include these menu items? or should I write a new one?
– Abhi Ram
Nov 15 '18 at 7:37
in which xml should I include these menu items? or should I write a new one?
– Abhi Ram
Nov 15 '18 at 7:37
Some people choose to create a new xml for menus if you have a lot of them, if it's just one or two then you can add them in the same XML as your views.
– djames
Nov 15 '18 at 7:42
Some people choose to create a new xml for menus if you have a lot of them, if it's just one or two then you can add them in the same XML as your views.
– djames
Nov 15 '18 at 7:42
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53280169%2fhow-make-my-custom-module-visible-in-app-switcher-odoo12-through-code%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown