コンテンツへスキップ
メニュー
この質問にフラグが付けられました
3 返信
3325 ビュー

If I design a module, I can perform:

odoo -d mydatabase -u all

in order to update all modules.


However, if I want to update just one module I would expect that:

odoo -d mydatabase -u my_module_name

would fit


But it does not, I just changed the name of the module and after updating using -u my_module_name does not work.


アバター
破棄

what kind of tittle is that? is this some kind of click bait?, check in the logs for correctly modules load, maybe you have some kind of missing dependencies

著作者

No click baits at all Axel, title refers to how to update modules and body highlights doubts about that. Something that might seem obvious is not so obviously covered by the docs (it is actually still TODO in docs http://odoo-development.readthedocs.io/en/latest/odoo/usage/install-module.html)

最善の回答

If you change the name of an already installed module, then a couple of things will happen.


Firstly, when Odoo server starts, it will be looking for the already installed module - under the old name, which does not exist.

When it doesn't find that module, it will ignore it and pretend as if it is not installed.


Thus, the command you are running - update "new_module_name" will also not run because Odoo does not see "new_module_name" as already installed.


To fix this, do the following steps:

  1. Load Odoo server normally & uninstall the old_module_name

  2. Either install new_module_name through the Apps section or run the command line command "odoo -d mydatabase -i new_module_name --without-demo=new_module_name"


Now the new_module_name will be installed and future attempts to upgrade through command line will run normally.

アバター
破棄
著作者

What --without-demo does?

If a module has demo data, --without-demo specifies that it should not be installed.

著作者 最善の回答

Thanks for your answers

I was doing a test with a dummy module (foo_module).


In __manifest__.py I use the name:

'name': "Dummy Module",


I do:

odoo -d my_database -u all

And I can see the module ready to be installed in the module list.


Now, if I stop server, change __manifest__.py to:

'name': "Dummy Module 2",

and run:

odoo -d my_databse -u foo_module


I would expect to see "Dummy Module 2" as module name in the list of available modules, but I still see "Dummy Module".


Does -u module_name work only with installed modules?

 

アバター
破棄
著作者

I found that updating module name (inside __manifest__) is actually updated when app list is updated, an option available in the developer mode in Odoo 10 (https://www.odoo.com/forum/help-1/question/how-to-install-a-module-in-odoo-10-using-deb-package-in-ubuntu-111949)

関連投稿 返信 ビュー 活動
0
4月 20
2342
1
3月 18
4537
1
3月 15
10918
2
3月 15
5805
1
1月 25
22961